1. 程式人生 > >springboot jdbctemplate sql日誌無法列印問題解決

springboot jdbctemplate sql日誌無法列印問題解決

舊專案中資料庫操作用的jdbctemplate用於資料庫操作,可是配置了輸出日誌為debug級別卻無法列印sql語句,配置如下:

logging:
  file: demo.log
  pattern:
    console: "%date{HH:mm:ss.SSS} %-5level %-30.30logger{29} : %msg%n"
  level:
    com.demo: DEBUG

正常如果是mybatis專案應該是可以打印出sql語句的,但是jdbctemplate需要單獨配置出來才能答應sql日誌,修改如下:

logging:
  file: demo.log
  pattern:
    console: "%date{HH:mm:ss.SSS} %-5level %-30.30logger{29} : %msg%n"
  level:
    com.demo: DEBUG
    org.springframework.jdbc.core.JdbcTemplate: DEBUG

多了一行org.springframework.jdbc.core.JdbcTemplate: DEBUG,其實,只要新增上org.springframework就可以了,這樣就可以打印出sql,但是如果包名層級太高,如org.springframework控制檯會打印出很多的日誌,為了讓日誌清晰,所以配置到org.springframework.jdbc.core.JdbcTemplate就可以了。

 

當然,還有一種方法就是直接編寫logback.xml或者log4j檔案,這樣同樣可以打印出sql:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <include resource="org/springframework/boot/logging/logback/base.xml"/>
    
    <!--顯示日誌-->
    <logger name="org.springframework.jdbc.core" additivity="false" level="DEBUG" >
        <appender-ref ref="CONSOLE" />
        <appender-ref ref="FILE" />
    </logger>
 
 
</configuration>