一、添加必要的jar包
1、root的pom添加如下依赖
<!--日志相关-->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j-api.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>${slf4j-log4j12.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>${log4j-core.version}</version>
</dependency>
<properties>
<slf4j-api.version>1.7.21</slf4j-api.version>
<slf4j-log4j12.version>1.7.21</slf4j-log4j12.version>
<log4j-core.version>2.9.1</log4j-core.version>
</properties>
2、web和service的pom中分别添加如下依赖:
<!--日志相关-->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
</dependency>
3、service的resources目录下添加log4j.properties如下
#root
log4j.rootLogger=debug,CONSOLE,file
#CONSOLE
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Target=System.out
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d%-5p%l%t|-%m%n
#控制台sql语句
log4j.logger.java.sql.Statement=debug
log4j.logger.java.sql.PreparedStatement=debug
log4j.logger.java.sql.ResultSet=debug
#file
log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.DatePattern=yyyyMMdd
log4j.appender.file.File=../jarvis-logs/jarvis-service.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d%-5p%l%t|-%m%n
#sql语句
log4j.logger.com.ibatis=debug
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=debug
log4j.logger.com.ibatis.common.jdbc.ScriptRunner=debug
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=debug
log4j.logger.java.sql.Connection=debug
#dubbo
log4j.logger.com.alibaba.dubbo=ERROR
4、web的resources目录下添加log4j.properties文件:
#root
log4j.rootLogger=INFO,CONSOLE,file
log4j.additivity.org.apache=true
#CONSOLE
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Threshold=info
log4j.appender.CONSOLE.Target=System.out
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d%-5p%l%t|-%m%n
#file
log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.DatePattern=yyyyMMdd
log4j.appender.file.File=../jarvis-logs/jarvis-web.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d%-5p%l%t|-%m%n
#dubbo
log4j.logger.com.alibaba.dubbo=ERROR
二、如果需要在程序中添加日志操作,则在需要打日志的类中添加如下代码:
//打印日志
privatestaticfinalLoggerlogger=LoggerFactory.getLogger(ItemServiceImpl.class);
三、如果server层不需要打印sql语句,则直接复制web中log4j.properties的文件内容即可