Java 标准日志工具 Log4j 的使用(附源代码)
Java 标准日志工具 Log4j 的使用(附源代码)
源代码下载
Log4j 是事实上的 Java 标准日志工具。会不会用 Log4j 在一定程度上可以说是衡量一个开发人员是否是一位合格的
Java 程序员的标准。如果你是一名 Java 程序员,如果你还不会用
Log4j,那你真的很有必要读一下这篇文章了。很多朋友反映想写程序日志,但是却不知道怎么把日志写到日志文件里,而且 Java
这方面的资料似乎不多。如《如何写log4j.xml日志配置文件》
所述。本文详细介绍了如何在项目中使用 Log4j 的步骤,并附加了一个例子性质的代码。
Why Log4j?
有的朋友喜欢用 System.out.println(String msg); 语句来调试代码。这个确实是一个很好的调试工具。但是随着项目的结束,或者问题的解决,这些语句需要我们一个个地揪出来手工删除?《如何一次性删除所有的system.out.println语句
》,这个帖子里的这位网友就遇到了这样一个问题。
全部都删除干净,问题又来了:如果以后又出现问题了该怎么办呢?难道再次添加,问题解决后再次查找到删除?
使用 Log4j 就可以很好地解决上面的问题和矛盾。Log4j 有一个日志级别,用来控制是否进行日志记录。其由低到高的级别如下:
ALL < DEBUG < INFO < WARN < ERROR < FATAL < OFF
将日志进行分级的目的就是在于可以灵活配置。比如说如果日志级别限定于 DEBUG,那么包括 DEBUG 在内的,INFO、WARN、ERROR、FATAL、OFF 都会进行日志记录;而如果级别定义为 INFO,那么 INFO 以下的级别,像 DEBUG 的日志就不会记录。比如如下代码:
Logger log = LogManager.getLogger(HelloWorld.class);
log.info("info通过 class 对象来获取 logger 对象");
log.debug("debug通过 class 对象来获取 logger 对象");
log.warn("warn通过 class 对象来获取 logger 对象");
如果你的 Log4j 定义为输出到控制台,日志级别定义为 INFO,那么执行到上面语句块,控制台会输出以下日志信息:
18
相关文档:
Wireless Application Programming with J2ME and Bluetooth
1. http://developers.sun.com/mobility/midp/articles/bluetooth1/
Part II: The Java APIs for Bluetooth Wireless Technology
2. http://developers.sun.com/mobility/midp/articles/bluetooth2/
JSR 82: JavaTM APIs for Bluetooth
3. http://www.jcp.o ......
对于这个系列里的问题,每个学Java的人都应该搞懂。当然,如果只是学Java玩玩就无所谓了。如果你认为自己已经超越初学者了,却不很懂这些问题,请将你自己重归初学者行列。内容均来自于CSDN的经典老贴。
问题一:我声明了什么!
String s = "Hello world!";
许多人都做过这样的事情,但是,我们到底声明了什么?回答通 ......
jdk1.4引入了Preferences API,它比对象序列化更接近于持久化,因为它可以自动存取和读取信息。Preferences类似于键值对,存取在一个节点层析结构中,不过它只能存取原始数据类型和字符串,每个字符串的长度不能超过8k。
import java.util.prefs.Preferences;
public class PreferencesDemo {
public static ......
Java编译环境安装
1、JDK
JDK-6-windows-i586.exe安装。
其中,JDK包含了JRE、JVM。
A、JRE
B、JVM
Java虚拟机
什么是Java虚拟机
Java虚拟机是一个想象中的机器,在实际的计算机上通过软件模拟来实现。Java ......