【Mybatis】使用LambdaQueryWrapper后让控制台输出执行的SQL语句
本文适用于SpringBoot2.5.4,Mybatis2.2.0,mybatis-plus3.0.5版本,不保证在其它版本的适用性。
与本文相关的姊妹篇:https://www.cnblogs.com/heyang78/p/15369564.html
本文例程:https://files.cnblogs.com/files/heyang78/redisCache_mybatisplus_printsql_211006.rar
使用LambdaQueryWrapper后,简单查询是方便了,但有时需要把SQL显示出来,要做到这一步在yml文件里加入相应配置就好了。
server: port: 8080 myenv: name: '开发环境' spring: datasource: url: jdbc:oracle:thin:@127.0.0.1:1521:orclhy78 username: luna password: 1234 driver-class-name: oracle.jdbc.OracleDriver #mybatis-plus配置控制台打印完整带参数SQL语句 mybatis-plus: configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
有了这个设置后,控制台就有sql输出了:
有请求来到,其路径=/searchEmpsByAge Creating a new SqlSession SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@e73a277] was not registered for synchronization because synchronization is not active JDBC Connection [HikariProxyConnection@1331295536 wrapping oracle.jdbc.driver.T4CConnection@ab2e6d2] will not be managed by Spring ==> Preparing: SELECT id,name,age FROM emp WHERE age = ? ==> Parameters: 42(Integer) <== Columns: ID, NAME, AGE <== Row: 3, 李逵, 42 <== Row: 1, 2222, 42 <== Row: 2, 3333, 42 <== Total: 3 Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@e73a277] 2021-10-06 16:58:16.750 WARN 24752 --- [l-1 housekeeper] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Thread starvation or clock leap detected (housekeeper delta=2h32s442ms568µs700ns).
参考文章:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
2019-10-06 [MySql]MySql中外键设置 以及Java/MyBatis程序对存在外键关联无法删除的规避