首先說明版本:
java
log4j 版本是 第2版beta9,引用jar包web
log4j-api-2.0-beta9.jar log4j-core-2.0-beta9.jarspring
mybatis 是 mybatis-3.2.3sql
log4j2 配置 以下,命名爲 log4j2.xml(log4j2只能用xml或者json,其餘命名格式在此不在介紹)將其放在classpath下,內容以下:json
<?xml version="1.0" encoding="UTF-8"?> <configuration status="OFF"> <appenders> <Console name="Console" target="SYSTEM_OUT"> <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/> </Console> </appenders> <loggers> <logger name="log4j.logger.noModule" level="fatal" additivity="false"> <appender-ref ref="Console"/> </logger> <logger name="log4j.logger.org.mybatis.jpetstore" level="trace" additivity="false"> <appender-ref ref="Console"/> </logger> <logger name="log4j.logger.com.opensymphony.xwork2" level="debug" additivity="false"> <appender-ref ref="Console"/> </logger> <logger name="log4j.logger.com.ibatis" level="trace" additivity="false"> <appender-ref ref="Console"/> </logger> <logger name="log4j.logger.com.ibatis.common.jdbc.SimpleDataSource" level="debug" additivity="false"> <appender-ref ref="Console"/> </logger> <logger name="log4j.logger.com.ibatis.common.jdbc.ScriptRunner" level="debug" additivity="false"> <appender-ref ref="Console"/> </logger> <logger name="log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate" level="debug" additivity="false"> <appender-ref ref="Console"/> </logger> <logger name="log4j.logger.org.mybatis" level="debug" additivity="false"> <appender-ref ref="Console"/> </logger> <logger name="log4j.logger.java.sql" level="debug" additivity="false"> <appender-ref ref="Console"/> </logger> <logger name="log4j.logger.java.sql.Connection" level="debug" additivity="false"> <appender-ref ref="Console"/> </logger> <logger name="log4j.logger.java.sql.Statement" level="debug" additivity="false"> <appender-ref ref="Console"/> </logger> <logger name="log4j.logger.java.sql.PreparedStatement" level="debug" additivity="false"> <appender-ref ref="Console"/> </logger> <logger name="log4j.logger.java.sql.ResultSet" level="debug" additivity="false"> <appender-ref ref="Console"/> </logger> <root level="trace"> <appender-ref ref="Console"/> </root> </loggers> </configuration>
光有這個配置是不行滴,由於mybatis加載日誌組件是有順序的,他會按 api
SLF4Jmybatis
Apache Commons Loggingapp
Log4j 2框架
Log4jide
JDK logging
的順序查找。因此,若是在web應用中用了spring之類的框架,他會包含commons-log包,根據優先級,他就不會去用log4j了,因此還得在mybatis配置文件中配置一條語句,以下
<settings> <setting name="logImpl" value="LOG4J2"/> </settings>
而後就能夠了