旧项目中数据库操作用的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>