当前环境:SpringMVC + Mybatis + Spring
在项目中 pom.xml 加入 log4j包 的依赖,更新 Maven
<!-- log4j日志文件管理包版本 -->
<properties>
<slf4j.version>1.7.25</slf4j.version>
<log4j.version>1.2.17</log4j.version>
</properties>
<!-- 日志文件管理包 -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>${log4j.version}</version>
</dependency>
写log4j配置文件---logback.properties---
#定义输出级别
log4j.rootLogger=DEBUG,Console,File
#日志输出方式:控制台输出
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.Target=System.out
log4j.appender.Console.Encoding=GBK
#可以灵活地指定布局模式
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
#log4j.appender.Console.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss.SSS} -%p (%F\:%L)- %m%n
#打印格式栗子:2017-08-11 15:36 -DEBUG (HttpServletBean.java:174)- Servlet 'mvc' configured successfully
log4j.appender.Console.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm} -%p (%F\:%L)- %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
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
#log4j.logger.java.sql.ResultSet=DEBUG
最后一步,在项目/WEB-INF下的web.xml文件中加入监听配置,顺序需注意,listener必须放在后面
<!-- 指定监听器加载的log4j配置文件 -->
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:logback.properties</param-value>
</context-param>
<listener>
<listener-class>
org.springframework.web.util.Log4jConfigListener
</listener-class>
</listener>
注意:
也可以将 log4配置文件命令为log4j.properties,然后放到src/main/resources/目录下。
使用示例
import org.apache.log4j.Logger;
public class testlog4j {
private static final Logger LOG = Logger.getLogger(testlog4j.class);
public static void main(String[] args){
LOG.info("this is log");
}
}
输出:

参考:https://www.cnblogs.com/hnarea/p/7346374.html
特别注意
推荐以 slf4j接口 的方式去加载使用 log4j,详情查看:slf4j 官方入门教程(整合log4j)