mybatis如何打印sql语句

有两种方式,一种是在log4j里配置,另外一种是在mybatis配置文件中配置,现在,详细介绍配置方法:

1.log4j配置:

log4j.xml(放在src下面包路径中)

log4j.rootLogger=debug,stdout,logfile
	 	 
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout
	 
log4j.appender.logfile=org.apache.log4j.FileAppender
log4j.appender.logfile.File=my.log
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %F %p %m%n

//打印mybatissql配置部分	 
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

2.mybatis配置文件配置,这里我介绍整合spring后的mybatis,如果是单独的mybatis,直接在mybatis.cfg.xml中配置。

首先整合spring和mybatis的配置文件spring-mybatis.xml中:

<!-- sessionFactory工厂配置 -->
	<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
		<property name="dataSource" ref="dataSource" />
		<!-- mybatis和spring完美配置,通配符直接扫描路径下xml -->
		<property name="mapperLocations" value="classpath*:com/cn/su/mapper/*.xml"></property>
		<!-- 整合mybatis配置文件 -->
		<property name="configLocation" value="classpath:sqlMapConfig.xml"></property>
	</bean>

这里的sqlMapConfig.xml就是mybatis的配置文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
  PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
	<settings>
		<!-- 打印查询语句 -->
       		 <setting name="logImpl" value="STDOUT_LOGGING" />
	</settings>
</configuration>

这样就配置好了,如果单纯的需要打印sql语句,第二种方式比较好,不会打印很多无关的信息。

猜你喜欢

转载自blog.csdn.net/qq_25313187/article/details/78349977