Mybatis控制台打印SQL语句的方法

小编给大家分享一下Mybatis控制台打印SQL语句的方法,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

问题描述

在使用mybatis进行开发的时候,由于可以动态拼接sql,这样大大方便了我们。但是也有一定的问题,当我们动态sql拼接的块很多的时候,我们要想从*mapper.xml中直接找出完整的sql就会非常的难,这个时候经常会需要把组合之后的完整sql调试出来比较好。

Mybatis控制台打印SQL语句的方法

解决方案

方案1:

网上说的比较多的,之前也是这么用的一种方式

1:首先将ibatis log4j运行级别调到DEBUG可以在控制台打印出ibatis运行的sql语句

2:添加如下语句:

###显示SQL语句部分
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.config.xml中增加如下配置:

<?xmlversion="1.0"encoding="UTF-8"?>
<!DOCTYPEconfiguration
PUBLIC"-//mybatis.org//DTDSQLMapConfig3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">

<configuration>
<settings>
<settingname="logImpl"value="STDOUT_LOGGING"/>
</settings>
</configuration>

以上mybatis 调试出sql的两种方式。

在SpringBoot中,修改application.yml文件

mybatis:
configuration:
log-impl:org.apache.ibatis.logging.stdout.StdOutImpl

看完了这篇文章,相信你对“Mybatis控制台打印SQL语句的方法”有了一定的了解,如果想了解更多相关知识,欢迎关注恰卡编程网行业资讯频道,感谢各位的阅读!

发布于 2021-03-17 20:53:48
收藏
分享
海报
0 条评论
181
上一篇:Pyinstaller闪退怎么办 下一篇:CSS会阻塞页面渲染吗
目录

    推荐阅读

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码