SpringBoot 开发小技巧 - 打印 Mybatis 中的 sql 语句
我们平常在开发 SpringBoot+Mybatis 项目时,有时会需要打印 sql 的执行语句
使用
application.yml
如果项目使用的时 yml 配置,则:
mybatis:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
logging:
level:
com:
xxxxx:
dao: debug
application.properties
如果项目使用的时 properties 配置,则:
mybatis.configuration.log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
logging.level.com.xxxxx.dao=debug
注意包名路径应为 mybatis 对应的方法接口所在的包,而不是 mapper.xml 所在的包
即可在控制台中打印 sql 语句:
==> Preparing: SELECT user_change_bind_log_id,user_id,last_bind,bind,bind_type,log_time FROM user_change_bind_log WHERE user_id=? AND bind_type=? AND log_status=0 ORDER BY log_time DESC LIMIT ?
==> Parameters: 100023(Integer), device(String), 10(Integer)
注意上线时需要去除打印,可以用 application-xx 实现
推荐使用 idea 插件
MyBatis Log Plugin
这款插件可以把 Mybatis 输出的 SQL 日志还原成完整的 SQL 语句,就不需要我们去手动转换了(如何配置,百度一下)
Free MyBatis plugin
非常好用的 MyBatis 插件,对 MyBatis 的 xml 具有强大的提示功能,同时可以关联 mapper 接口和 mapper.xml 中的 sql 实现
- 可以通过 Mapper 接口中方法左侧的箭头直接跳转到对应的 xml 实现中去
- 也可以从 xml 中 Statement 左侧的箭头直接跳转到对应的 Mapper 接口方法中去
- 还可以通过 Alt+Enter 键组合直接生成新方法的 xml 实现
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论