Spring Boot集成Mybatis中如何顯示日志的實現
在Spring Boot集成Mybatis的項目中,如果出現SQL語句執行問題,我們需要進行排查。此時就需要打印對應的SQL語句,那么該如何操作才能正常打印出對應的SQL語句呢?
其實操作非常簡單,在application.properties或application.yml文件中配置對應mapper所在包的日志級別即可。
示例如下:
logging.level.com.secbro.mapper=debug
其中“logging.level.”為前綴,“com.secbro.mapper”為Mapper接口所在的包路徑。對應的value值為日志的級別。
此時,再執行查詢程序,就會打印出對應的SQL日志信息來。
對應的Mapper文件比如:
package com.secbro.mapper;import com.secbro.model.Order;import org.apache.ibatis.annotations.*;import java.util.List;/** * @author sec * @version 1.0 * @date 2020/3/1 10:01 AM **/public interface OrderMapper { /** * 更新訂單 * * @param order 訂單信息 * @return 記錄數 */ @Update('UPDATE tb_order SET order_no = #{orderNo},amount = #{amount} WHERE id =#{id}') int update(Order order);}
注意package的路徑對照。
添加debug打印之后,執行一條單元測試,對應的日志信息如下:
2020-04-02 21:43:39.466 INFO 92784 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...2020-04-02 21:43:39.869 INFO 92784 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.2020-04-02 21:43:39.881 DEBUG 92784 --- [ main] com.secbro.mapper.OrderMapper.update : ==> Preparing: UPDATE tb_order SET order_no = ?,amount = ? WHERE id =? 2020-04-02 21:43:39.917 DEBUG 92784 --- [ main] com.secbro.mapper.OrderMapper.update : ==> Parameters: N001(String), 8888(Integer), 1(Integer)2020-04-02 21:43:39.921 DEBUG 92784 --- [ main] com.secbro.mapper.OrderMapper.update : <== Updates: 12020-04-02 21:43:39.939 INFO 92784 --- [extShutdownHook] o.s.s.concurrent.ThreadPoolTaskExecutor : Shutting down ExecutorService ’applicationTaskExecutor’2020-04-02 21:43:39.940 INFO 92784 --- [extShutdownHook] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown initiated...2020-04-02 21:43:39.949 INFO 92784 --- [extShutdownHook] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown completed.
其中,我們可以很清楚的看到對應的SQL語句,參數以及執行結果。
到此這篇關于Spring Boot集成Mybatis中如何顯示日志的實現的文章就介紹到這了,更多相關Spring Boot Mybatis顯示日志內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章: