使用的jar包
门面日志包slf4j,即接口
log4包j即日志实现类。
log4j.properties的内容
log4j.properties。设置输出日志到哪?
#root.rootLogger对整个工程生效
#root.logger.com.entity=debug,file。对com.entity包生效
#rootLogger=debug,appender1,appender2。输出最低日志级别,输出目的地1,输出目的地2
#最低日志级别是debug<info<warning<error<fatal,输出目的地是file
#需在控制台输出,将其中一个appender目的地定义为stdout即可。
log4j.rootLogger=debug,stdout,file
#日志输出到ConsoleAppender控制台
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy/MM/dd HH:mm:ss:SSS} %5p %c:%L - %m%n
#日志输出到FileAppender文件
log4j.appender.file=org.apache.log4j.FileAppender
#输出到哪个文件
log4j.appender.file.File=E:/aikaka/eclipse_workspace/payment/src/log.txt
# java中\是转义符,\->\\
#log4j.appender.file.File=E:\\aikaka\\eclipse_workspace\\payment\\src\\log.txt
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy/MM/dd HH:mm:ss:SSS} %5p %c:%L - %m%n
log4j.properties的位置
1.普通java项目
可放在src下,可放在WEB-INF下,记录日志时。
public Demo {
private static final Logger logger = LoggerFactory.getLogger(Demo.class);
//设置位置
PropertyConfigurator.configure("./src/log4j.properties");
//PropertyConfigurator.configure("./WebContent/WEB-INF/log4j.properties");
logger.info("info");
}
2.web项目
2.1 放在WEB-INF下,在记录日志的类中配置,较麻烦
public Demo {
private static final Logger logger = LoggerFactory.getLogger(Demo.class);
//设置位置
PropertyConfigurator.configure("./WebContent/WEB-INF/log4j.properties");
logger.info("info");
}
2.2 放在WEB-INF下,在web.xml中配置
public Demo {
private static final Logger logger = LoggerFactory.getLogger(Demo.class);
logger.info("info");
}
web.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<!-- 配置log4j.properties位置 -->
<context-param>
<param-name>log4jConfigLocation</param-name>
<!-- 从WebContent为根 -->
<param-value>/WEB-INF/log4j.properties</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
</web-app>