【原】配置Log4j,使得MyBatis打印出SQL语句
【环境参数】JDK:jdk1.8.0_25
IDE:Eclipse Luna Servie Release 1
框架:Spring 4.1.5 + SpringMVC 4.1.5 + MyBatis 3.2.2
【配置步骤】
⼀、设置MyBatis的Setting(⾮必须,不同环境下,可能不需要该设置)。
在“src/main/java/resources”⽬录下,创建mybatis-config.xml⽂件,并且输⼊下列内容。
1 2 3 PUBLIC \"-//mybatis.org//DTD Config 3.0//EN\" 4 \"http://mybatis.org/dtd/mybatis-3-config.dtd\"> 5 6 7 8 9
10
⼆、配置log4j的配置⽂件。
不同的项⽬中,log4j的配置⽂件的格式可能不同,在⼀些项⽬中,log4j的配置⽂件是XML格式的,⽐如log4j.xml;在另⼀些项⽬中,log4j的配置⽂件是properties格式的,⽐如log4j.properties。
备注:properties格式⽂件的配置⼀般只在⽼的项⽬中存在,新的互联⽹类项⽬,⼀般都是XML格式。1、对于properties格式⽂件的配置。
1 ###############Log4j 4 SQL Output start################# 2 log4j.logger.com.xxx.mydao=DEBUG
3 log4j.logger.com.springframework=DEBUG 4 log4j.logger.com.ibatis=DEBUG
5 log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=DEBUG 6 log4j.logger.com.ibatis.common.jdbc.ScriptRunner=DEBUG
7 log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG 8 log4j.logger.java.sql.Connection=DEBUG 9 log4j.logger.java.sql.Statement=DEBUG
10 log4j.logger.java.sql.PreparedStatement=DEBUG 11 log4j.logger.java.sql.ResultSet=DEBUG
12 log4j.logger.org.apache.ibatis.logging.commons.JakartaCommonsLoggingImpl=DEBUG13 log4j.logger.java.sql=DEBUG,CONSOLE
14 ###############Log4j 4 SQL Output end###################
2、对于xml格式⽂件的配置。
1 2 3
4 5 6 7
8 9 10 DEBUG11
12 13 DEBUG14
15 16 DEBUG 17
18 19 DEBUG 20
21 22 DEBUG23
24 25 DEBUG26
27 28 DEBUG29
30 31 DEBUG32
33 34 DEBUG35
36 37 DEBUG38
39 40 DEBUG41 42
43 44 45
46 47
48
说明:
上述配置中,“com.xxx.mydao”为⾃⼰项⽬中MyBatis的所有的mapper和xml⽂件所在的包名字。⾄此,log4j的打印SQL语句的配置完成。
3、XML格式配置的精简版本
1 2 3 4 DEBUG 5 6
7 8 9
10 11
12
说明:
在开发中,需要配置让哪个包下的程序打印出SQL,则仅仅只⽤配置那⼀个包名就成。
上述配置中,“com.xxx.mydao”为⾃⼰项⽬中MyBatis的mapper和xml⽂件所在的包名字,因此,精简版中,仅仅配置了这个包的内容【拓展】
“细粒度”控制:Log4j打印出MyBatis中仅仅单个Mapper的配置。
DEBUG