参考文章mybatis中文网:http://www.mybatis.org/mybatis-3/zh/logging.html
方法步骤:
1.首先创建mybatis配置文件 mybatis.xml,内容如下:
<?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="lazyLoadingEnabled" value="false" /> <setting name="logImpl" value="LOG4J" /> </settings> </configuration>
2,mybatis与Springmvc整合配置
<!-- mybatis和spring完美整合,不需要mybatis的配置映射文件 --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="configLocation" value="classpath:mybatis.xml"/><!-- 指定Mybatis配置文件地址 --> <property name="dataSource" ref="dataSource"/> <!-- 自动扫描mapping.xml文件 --> <property name="mapperLocations" value="classpath:mapping/*.xml"></property> </bean>
3.配置log4j ,添加loog4j的jar包
4.配置log4j.properties文件
如果应用中有这样一个mapper
package org.mybatis.example; public interface BlogMapper { @Select("SELECT * FROM blog WHERE id = #{id}") Blog selectBlog(int id); }
那么,就在log4j.properties文件中添加如下内容:
log4j.logger.org.mybatis.example.BlogMapper=DEBUGE
当程序执行到该mapper时会打印相应的sql:
Preparing: SELECT p.phoneid,p.telephone,p.descripe,p.groupid,g.id,g.groupname,g.concact,g.address,g.descripe FROM phone p,groups g WHERE p.phoneid = ? and p.groupid=g.id
如需打印所有的sql,把所有的mapper以相同的方式添加到log4j.properties文件中即可。