springboot整合mybatis在控制台打印sql语句的办法及MyBatis Log Plugin插件的安装与使用
一.SpringBoot整合完Mybatis后,方法执行完后看不到sql语句,很影响我们的调试,下面就来介绍下如何在控制台打印sql:
分两种情况:
1.配置文件是application.properties类型的:
logging.level.com.example.demo.mapper=debug
mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
注意:logging.level.com,后面的路径指的是mybatis对应的方法接口所在的包。并不是mapper.xml所在的包
2.配置文件是application.yml类型的:
logging:
level:
com.example.demo.mapper: debug
mybatis:
type-aliases-package: com.example.**.entity
mapper-locations: classpath:mapper/*.xml
#用于mybatis在控制台打印sql日志
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
参考类:org.apache.ibatis.session.Configuration
测试是否成功:
发送请求:
查看控制台结果:
至此,发现了控制台中打印出了sql语句,但是由于避免出现SQL注入,大部分情况下都是使用#{}
占位符的方式传参。所以日志打印SQL时,打印的也是占位符,
如果SQL比较复杂,参数又很多的话,要通过日志拼凑真正可执行的SQL还是件比较头痛的事情。好在IDEA有款很不错的插件(Mybatis Log Plugin)可以解决上述问题
二.MyBatis Log Plugin插件的安装与使用
插件安装:
和其他插件一样MyBatis Log Plugin插件的安装也是两种方式:在线和离线安装
离线安装:可从:http://plugins.jetbrains.com/plugin/10065-mybatis-log-plugin/versions,下载离线包。然后在Plugins设置界面,Install plugin from desk即可。
选择你现在的离线包所在路径即可。
在线安装:file-----settings-----plugins------在插件安装商店搜索MyBatis Log Plugin-----install即可,install后重启idea
点击tools发现安装成功如下图:
运行MyBatis Log Plugin,如下图,发现在run窗口旁多了一个我们添加的窗口;
重新发送刚才的请求,发现在MyBatis Log中打印出了sql:
这样,在遇到问题的时候,直接把这段SQL拿去数据库中调试,大大提高了开发效率~~~
本文转自:https://blog.csdn.net/zhang_zhenwei/article/details/102487226