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>

猜你喜欢

转载自blog.csdn.net/seanxwq/article/details/84099478