MyBatis控制台显示SQL语句的方法实现
一、单独使用MyBatis
(1)在mybatis.xml配置文件中添加如下配置
<setting name="logImpl" value="STDOUT_LOGGING" />
(2)使用slf4j输出
因此要先添加slf4j的依赖
<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.6</version> </dependency>
log4j配置文件:
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
二、在SSM框架集合中输出SQL
(1)使用上面的slf4j输出的方法
(2)依然新建“mybatis-config.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="logImpl" value="STDOUT_LOGGING" />
</settings>
</configuration>
但是如果是Spring整合MyBatis的情况下,我们通常会写一个spring-mybatis.xml的配置文件
此时,如果是这样的写法,这个配置文件暂时不会生效,因为没有在这个spring-mybatis.xml注册,Spring就不会扫描这个配置文件
此时,修改spring-mybatis.xml中id为:sqlSessionFactory的bean,修改如下写法:
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="mapperLocations" value="classpath:com/lzc/dao/*.xml"></property> <!-- 自动扫描mapping.xml文件 --> <property name="configLocation" value="classpath:conf/mybatis-config.xml"></property> </bean>
三、在Spring Boot + MyBatis 中输出SQL语句
(1)使用application.properties配置文件
logging.level.cn.lzc.user.mapper=debug
格式:logging.level + 要显示sql的Mapper文件的包,yml文件同理
(2)使用application.yml配置文件
logging: level: cn: lzc: user: mapper: debug
显示的sql样式如下:

到此这篇关于MyBatis控制台显示SQL语句的方法实现的文章就介绍到这了,更多相关MyBatis控制台显示SQL内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
IntelliJ IDEA 2022.1.1创建java项目的详细方法步骤
最近安装了IntelliJ IDEA 2022.1.1,发现新版本的窗口还有些变化的,所以下面这篇文章主要给大家介绍了关于IntelliJ IDEA 2022.1.1创建java项目的详细方法步骤,文中通过图文介绍的非常详细,需要的朋友可以参考下2022-07-07
SpringData JPA中@OneToMany和@ManyToOne的用法详解
这篇文章主要介绍了SpringData JPA中@OneToMany和@ManyToOne的用法详解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-10-10
Java中String、StringBuffer、StringBuilder的区别详解
java中String、StringBuffer、StringBuilder是编程中经常使用的字符串类,他们之间有什么区别呢?下面小编给大家总结了Java中String、StringBuffer、StringBuilder的区别详解,需要的朋友参考下吧2016-06-06


最新评论