直接上代码,留着备份:
文件一:
package com.lucius.test.run;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
/**
* Log4j的使用演示
* @author linwei
*
*/
public class Log4jTest {
// 注意点1:导入的包必须是org.apache.commons.logging.Log,不要搞错
// 注意点2:必须是静态类变量,才可以正常使用5个日志方法
// 注意点3:获取logger的方式是固定格式,记得传入的参数是本类的类名.class
private static Log logger=LogFactory.getLog(Log4jTest.class);
public static void main(String[] args) {
/*
* 说明:
* 1.log4j一共有5种记录日志的级别(邮件中有说),分别是下列5个方法。
* 2.配置文件中给出了两套方案,作为比较。
* 3.默认的日志输出方案是info级输出到控制台。
* 4.另外一套是讲fatal级输出到文件(文件路径请根据实际路径进行相应修改)。
* 5.怎么切换两套日志输出方案请看邮件中关于日志的说明。
*/
logger.debug("-----debug-----");
logger.info("-----info-----");
logger.warn("-----warn-----");
logger.fatal("-----fatal-----");
logger.error("-----error-----");
}
}
文件二:log4j.properties
#log4j 配置文件
#地点,级别
#log4j.rootLogger = FATAL,file
log4j.rootLogger = DEBUG,console
#声明file:输出到文件
log4j.appender.file = org.apache.log4j.DailyRollingFileAppender
#指定具体的文件名
log4j.appender.file.File = f:/log/log.txt
#设定file输出格式
log4j.appender.file.layout = org.apache.log4j.PatternLayout
#设定具体格式
log4j.appender.file.layout.ConversionPattern = [%p]-(%c{2}) %t %F %d{DATE} %m %n
#声明console:输出到控制台
log4j.appender.console = org.apache.log4j.ConsoleAppender
#设定console输出格式
log4j.appender.console.layout = org.apache.log4j.PatternLayout
#设定console具体格式
#log4j.appender.console.layout.ConversionPattern = \t[%p]-(%c{2}) %m %n
log4j.appender.console.layout.ConversionPattern = \t[%p] %m %n
说明:文件一为.Java的源文件,文件二为配置文件。
出现错误:
1、出现错误很可能是因为确实properties配置文件,但是刚开始我已经添加了testlog4j.properties配置文件,但是就是出现错误。最后才知道配置的文件的名字必须是log4j.properties,而且配置文件必须放在项目的scr文件夹内。这样就对了。
2、另外,源文件(文件一)中,import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;两句话也很关键,不能弄错了。
3、导入的log4j的jar包有两个,分别是:log4j-1.2.27.jar和commons-logging-1.1.3.jar,import到项目中即可。