2017.2.7

一.log4j配置及使用
1.导入log4j jar包,add to build path,,,add to build path后Eclipse会自动生成“referenced libraries”这个文件夹,里面包含了引入的jar包
2.添加log4j的配置文件,log4j.properties,自己创建。可以创建在任何地方。
3.log4j.properties创建书写完后,要加入项目的classpath或者buildpath。否则项目不会读取到这个配置文件。

二.log4j报错“log4j:WARN No appenders could be found for logger (com.ZZgjs.Access.AppMain).
log4j:WARN Please initialize the log4j system properly.”
原因:项目找不到log4j.properties配置文件,要将log4j.properties添加到classpath或者项目的启动路径里。

三。怎样将创建的配置文件或者自己创建的文件夹添加进项目的启动路径或者classpath?
答:1.config build path->source->add folder,选择你创建的文件夹,这样这个文件夹就被导入的项目的启动路径里了
或2.It looks like you need to add the location of your log4j.properties file to the Classpath in Eclipse.
Make sure your project is open in Eclipse, then click on the "Run" menu at the top of Eclipse and click on the following:
Run
Run Configurations
Classpath (tab)
User Entries
Advanced (button on the right)
Add Folders
then navigate to the folder that contains your log4j.properties file
Apply
Run
The error message should no longer appear.

2.Juint的配置和使用
1.下载juint.jar包并且add to build path.
2.生成JUnit测试框架:在Eclipse的Package Explorer中用右键点击该类弹出菜单,选择“New à JUnit Test Case”。
选择class under test,写上你要测试的类。选择你要测试的方法,
3.第四步,运行测试代码:按照上述代码修改完毕后,我们在CalculatorTest类上点右键,选择“Run As à JUnit Test”来运行我们的测试,会一次性运行所有的测试类。并显示runs,erros,fails
http://blog.csdn.net/chenleixing/article/details/44259453

3.Eclipse项目中,自己创建的文件夹,一定要add to source里面,否则是没办法在这个文件夹下创建类的。
比如常用的,testcase测试用例,我们常常创建一个单独的test的文件夹,在里面写上测试用例。但是你如果不把test文件夹add to source的话,是没办法添加进类的在这里面。

4.常用的日志库有;很多程序员也已经熟悉各种不同的日志库如java.util.logging、Apache log4j、logback。
5.log4jshi apache的。java util包夜提供了logging,日志类的使用。
6.使用SLF4J比log4j或者java.util.logging要优秀。
7.SLF4J不同于其他日志类库,与其它有很大的不同。SLF4J(Simple logging Facade for Java)不是一个真正的日志实现,而是一个抽象层( abstraction layer),它允许你在后台使用任意一个日志类库。如果是在编写供内外部都可以使用的API或者通用类库,那么你真不会希望使用你类库的客户端必须使用你选择的日志类库。

8.如果一个项目已经使用了log4j,而你加载了一个类库,比方说 Apache Active MQ——它依赖于于另外一个日志类库logback,那么你就需要把它也加载进去。但如果Apache Active
MQ使用了SLF4J,你可以继续使用你的日志类库而无语忍受加载和维护一个新的日志框架的痛苦。

9.注意:你使用的每个外来的jar包,如果这个外来jar包又引用了其他的jar包,你就需要把这个外来的jar也要引入进来。否则无法运行,所以下载jar包是个很悲催的事情。
10.怎么用SLF4J做Log4J的日志记录

除了以上好处,我想还有一个告诫,就是为了使用SLF4J,你不仅需要包含SLF4J的API jar包,例如 slf4j-api-1.6.1.jar,还需要相关Jar包,这取决于你在后台使用的日志类库。如果你想要使用和Log4J 一起使用SLF4J ,Simple Logging Facade for Java,,你需要包含以下的Jar包在你的classpath中,取决于哪个SLF4J和你在使用的Log4J的版本。例如:

slf4j-api-1.6.1.jar – JAR for SLF4J API
log4j-1.2.16.jar – JAR for Log4J API
slf4j-log4j12-1.6.1.jar – Log4J Adapter for SLF4J
如果你在使用Maven去管理你的项目依赖,你只需要包含SLF4J JAR包,maven会包含它的依赖的相关包。为了和SLF4J一起中使用Log4J,你可以包含以下的依赖在你项目中的pom.xml。

<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.6.1</version>
</dependency>

<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.6.1</version>
</dependency>

5.怎样使用slf4j?:引入正确的slf4j即可,包括slf4ja-api.jar包和slf4j-log4j.jar包即可。这俩包。然后下载相应的log4j.jar包
6.之后你代码是用的就是slf4j的logger类和方法,但依然会将log信息输出到log4j配置文件的输出log文件。
private static org.slf4j.Logger logger = LoggerFactory.getLogger(APPMain.class);

7.static用法:类加载时期,就要初始化的一些类的东西。比如常用的日志logger,就要弄成静态的,让它在类加载时就创建了logger,方便运行时使用。同事也方便这个类的静态方法使用这个logger。如果logger设置成非静态的,那么这个类里的静态方法是不能使用这个logger的。
8.说白了就是,静态static作用是在类的加载时期就学要初始化的一些数据和对象。
9.采用Base64编码具有不可读性,即所编码的数据不会被人用肉眼所直接看到,算是起到一个加密的作用。
Base64使用A--Z,a--z,0--9,+,/ 这64个字符
10.Base64并不是一种用于安全领域的加密解密算法(这类算法有DES等),尽管我们有时也听到使用Base64来加密解密的说法,但这里所说的加密与解密实际是指编码(encode)和解码(decode)的过程,其变换是非常简单的,仅仅能够避免信息被直接识别。

11.示例代码:

String类型 进行Base64编码
String encoded = Base64.encode("Hello, world!");

String类型 进行Base64解码
String decoded = Base64.decode(encoded);

指定字符编码方式
String encoded = Base64.encode("Hello, world!", "UTF-8");
String decoded = Base64.decode(encoded, "UTF-8");
对文件进行编码:
如果文件比较小,可以通过以下方式,直接读取到内存中进行编码处理
byte[] source = ...; // load your data here
byte[] encoded = Base64.encode(source);
byte[] decoded = Base64.decode(encoded);

如果大件比较大,则建议使用stream:
代码示例Base64编码:
InputStream inputStream = new FileInputStream("source.jpg");
OutputStream outputStream = new FileOutputStream("encoded.b64");
Base64.encode(inputStream, outputStream);
outputStream.close();
inputStream.close();
代码示例Base64解码:
InputStream inputStream = new FileInputStream("encoded.b64");
OutputStream outputStream = new FileOutputStream("decoded.jpg");
Base64.decode(inputStream, outputStream);
outputStream.close();
inputStream.close();

base64编码解码,java中base64使用,base64编码介绍与原理,base64加密与解密

20.先以“迅雷下载”为例: 很多下载类网站都提供“迅雷下载”的链接,其地址通常是加密的迅雷专用下载地址。
其实迅雷的“专用地址”也是用Base64"加密"的,其过程如下:
一、在地址的前后分别添加AA和ZZ
二、对新的字符串进行Base64编码
另: Flashget的与迅雷类似,只不过在第一步时加的“料”不同罢了,Flashget在地址前后加的“料”是[FLASHGET]
而QQ旋风的干脆不加料,直接就对地址进行Base64编码了

21.将二进制转换为可视化又不可读的string,就是base64的目的,base64是转换二进制用的!!!!
在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式。此时,采用Base64编码不仅比较简短,同时也具有不可读性,即所编码的数据不会被人用肉眼所直接看到。
22.base64是转换二进制用的!!!!将二进制转换为可视化又不可读的string,就是base64的目的,

23.标准的Base64并不适合直接放在URL里传输,因为URL编码器会把标准Base64中的“/”和“+”字符变为形如“%XX”的形式,而这些“%”号在存入数据库时还需要再进行转换,因为ANSI SQL中已将“%”号用作通配符。
为解决此问题,可采用一种用于URL的改进Base64编码,它不仅在末尾填充‘=‘号,并将标准Base64中的“+”和“/”分别改成了“-”和“_”,这样就免去了在URL编解码和数据库存储时所要作的转换,避免了编码信息长度在此过程中的增加,并统一了数据库、表单等处对象标识符的格式。
另有一种用于正则表达式的改进Base64变种,它将“+”和“/”改成了“!”和“-”,因为“+”,“*”以及前面在IRCu中用到的“[”和“]”在正则表达式中都可能具有特殊含义。
此外还有一些变种,它们将“+/”改为“_-”或“._”(用作编程语言中的标识符名称)或“.-”(用于XML中的Nmtoken)甚至“_:”(用于XML中的Name)。

24.方法参数为多个时,可以用一个hashmap参数来代替

时间: 02-07

2017.2.7的相关文章

Altair.HyperWorks.2017.2.Suite.Win64 13DVD

Siemens.Tecnomatix.CAD.Translators.5.1.2.Win64 1CD Tecplot.RS.2017.1.0.82356.Win64.&.Linux64 2CD Altium Designer 17.1.6 Build 538-ISO 1DVD Bentley.STAAD.Pro.Connect.Edition.v21.00.00.57 1CD CSS.Civil.Site.Design.v18.for.Civil3D.2012-2018 1CD Noesis.O

2017黑科技趋势最具看点的十大新品

腾讯数码讯(Human)作为一年一度的全球消费电子市场风向标,今年同样在拉斯维加斯举办的CES 2017消费电子展,依然吸引了一大批全球各个领域的厂商参展,从科技巨头到初创小团队.从传统汽车厂商再到家电企业,似乎所有能与科技沾边的公司都希望能在CES 2017上好好展示一次自己的风采. 其实每年的CES都有一些明星产品给我们留下深刻的印象,今年的也不例外.而这些明星产品不仅仅只是单单一款产品,更是代表了各自行业在进入到2017年之后的一个发展趋势和方向.而就将这样的变化能否成为未来的主流.或只是

2017考研英语:给作文模板增色的20句谚语

2017考研英语:给作文模板增色的20句谚语 2016-12-14 14:37:43 来源:新东方在线考研资料下载 靠谱名校专业课 最新资讯:2018考研复习要重点关注的6个月份 2018推免生考研必须了解的三件事 考研关注:过来人谈读研后的6大收获 英语单词背诵3大方法 18政治史纲各章节必背考点 精华推荐:名校学长学姐一对一考研答疑 向TA提问 [限额抢课]复试精华直播 课程推荐:2018考研签约全程联报 [政治+英语] 2018考研英数签约全程班 考研冲刺复习时间不多,大家作文背的咋样,模

老男孩教育每日一题-2017年5月11-基础知识点: linux系统中监听端口概念是什么?

1.题目 老男孩教育每日一题-2017年5月11-基础知识点:linux系统中监听端口概念是什么? 2.参考答案 监听端口的概念涉及到网络概念与TCP状态集转化概念,可能比较复杂不便理解,可以按照下图简单进行理解? 将整个服务器操作系统比喻作为一个别墅 服务器上的每一个网卡比作是别墅中每间房间 服务器网卡上配置的IP地址比喻作为房间中每个人 而房间里面人的耳朵就好比是监听的端口 当默认采用监听0.0.0.0地址时,表示房间中的每个人都竖起耳朵等待别墅外面的人呼唤当别墅外面的用户向房间1的人呼喊时

2017.4.7------软件测试的艺术+整理以前的摘记

2017.4.17 以下内容来自<软件测试的艺术> 第1页--20页.供自己学习使用.   第一章 软件测试:就是一个过程或一个系列过程,用来确认计算机代码完成了其应该完成的功能,不执行其不该有的操作. 第二章    测试人员需要有正确的态度.每当测试一个程序时,应当想到的是为程序增加一些价值.通过测试来增加程序的价值,是指测试提高了程序的可靠性或质量,提高程序可靠性,是指找出并最终修改了程序的错误. 1.有人把没发现错误的测试用例称为一次"成功的测试",而将发现了某个新错

2017全国两会政府工作报告(全文)

2017全国两会政府工作报告(全文) "两会"并不是一个特定的机构名称,而是对自1959年以来历年召开的"中华人民共和国全国人民代表大会"和"中国人民政治协商会议"的统称.由于两场会议会期基本重合,而且对于国家运作的重要程度都非常的高,故简称做"两会".下面一起来阅读2017年政府两会工作报告! 2017年两会政府工作报告 --2017年3月5日在第十二届全国人民代表大会第五次会议上 国务院总理 李克强 各位代表,现在,我代表

【集美大学1411_助教博客】2017软件工程开跑啦。。。

一.自我介绍 各位同学大家好,我是各位同学本学期软件工程这门课的助教,我叫郑蕊,现工作于吉林省长春市.很荣幸能再一次为<构建之法>担当助教,在之前担当助教的过程中,我已经获益良多,在此还是要感谢周老师和邹老师,感谢两位老师给我树立的优秀榜样,也感谢两位老师对我的教导和引导.很高兴这次能担当集美大学软工课的助教,在15年冬,我曾去过集美大学,那真的是一所风景非常优美的院校,从暴雪的东北到达绿意盎然的夏门,在集美大学的校园中漫步真是一件让人享受的事.希望本学期能和集美大学的同学们共同探讨软件工程,

Wijmo 2017路线图

2016年是Wijmo团队发展和增长的另一个富有成效的一年.回顾我们2016年的路线图,您可以看到我们交付了我们承诺的一切.让我们回顾一下2016年的亮点: 我们第一个全面支持Angular 2 互操作性还支持ReactJS和VueJS JavaScript模块支持包括SystemJS,CommonJS,AMD,WebPack等 OLAP控件包括PivotGrid, PivotChart和PivotPanel ReportView控件 FlexGrid的扩展控件MultiRow FlexGrid

Autodesk PowerMill 2017 SP1 v21.0.30.64.1203015 1DVD

Isotropix.Clarisse.iFX.v3.0.SP3.Win64 1CD Mentor.Graphics.Calibre.2016.1.Linux 2DVD Progman Oy MagiCAD for Revit MEP 2016.4 UR-1 and 2015.11 1DVD Simulation.Lab.Software.SimLab.Composer.7.v7.2.0.MacOSX 1CD Stat-Ease.Design.Expert.v10.0.3.1.Win64 1CD

2017 ACM-ICPC 亚洲区(乌鲁木齐赛区)网络赛

Banana Bananas are the favoured food of monkeys. In the forest, there is a Banana Company that provides bananas from different places. The company has two lists. The first list records the types of bananas preferred by different monkeys, and the seco