这篇文章主要介绍了SpringBoot怎么打印mybatis的执行sql问题的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇SpringBoot怎么打印mybatis的执行sql问题文章都会有所收获,下面我们一起来看看吧。
SpringBoot打印mybatis的执行sql
1、使用场景
应为在开发过程之中跟踪后端SQL语句,因什么原因导致的错误。需要在Debug过程之中打印出执行的SQL语句。所以需要配置一下SpringBoot之中,Mybatis打印SQL语句。
2、具体实现
application.properties(yml)中配置的两种方式:
1. logging.level.dao包名(dao package)=debug
2. mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
2.1、方案一 打印所有mybatis SQL
一下是yaml文件配置,properties文件翻译一下即可
mybatis configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
2.2、指定mapper文件所在的包
logging: level: cn.com.demos.*.mapper: trace # 改成你的mapper文件所在包路径
比如我采用第二种方式如下:
application.yml中 mybatis配置修改如下:
可以看到执行的效果如下:
SpringBoot开启mybatis的sql打印
java项目本地调试时,为了方便更加直观的查看跟数据库交互的具体情况,有些时候需要进行sql打印。
解决方案
方案 一:
springboot在默认情况下是不开启mybatis日志输出的,需要手动配置开启debug级别打印。
由于SpringBoot默认已经引入了spring-boot-starter-logging,所以只需配置即可,如下:
logging.level.cn.com.**.web.mapper=debug
说明:“cn.com.**.web.mapper”为mapper包路径。
方案 二:
增加log配置
mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
配置后,mybatis发送的sql就会在控制台输出了,建议用第一种方式。