一、spring boot中如何打印mybatis生成的sql?
相信大家在项目调试的时候都遇到过最后数据库查询、或者插入的数据与自己所想的不符,但是又不知道具体哪里出问题了。
下面就教大家如何打印mybatis最终生成并执行的sql。
1.查看mybatis的源码
我们直接搜索org.apache.ibatis.logging.jdbc包下的ConnectionLogger、PreparedStatementLogger、ResultSetLogger等类。
发现ConnectionLogger类的53行,会打印预编译的sql。但是在52行会判断日志等级是否大于debug(其他类是一样的)。
2.断点调试
我们发现其父类的日志记录器为自己项目mapper所在的包。
3.配置日志等级
logging.level.com.xpy.treeTest.mapper=debug
我们在application.properties中写上这个配置。或者在IDEA的运行参数中配置。
4.验证
发现控制台已经打印了mybatis为我们生成的sql