Spring Boot 3应用中SQL语句参数无法在控制台日志显示
解决Hibernate SQL参数不显示及TRACE日志无输出问题
1. 修正application.properties配置
确保配置项拼写无误,同时调整日志级别规则,避免根日志级别压制TRACE输出:
# 开启Hibernate SQL语句打印 logging.level.org.hibernate.SQL=DEBUG # 开启SQL参数绑定日志 logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE # 若根日志级别过高(默认INFO),会拦截TRACE日志,可临时调整根级别(生产环境不建议) logging.level.root=DEBUG
2. 调整Logback控制台Appender级别
Spring Boot默认Logback配置的控制台输出级别为INFO,会过滤TRACE级日志。可自定义logback-spring.xml单独放行目标包的TRACE日志:
<?xml version="1.0" encoding="UTF-8"?> <configuration> <include resource="org/springframework/boot/logging/logback/defaults.xml"/> <include resource="org/springframework/boot/logging/logback/console-appender.xml"/> <root level="INFO"> <appender-ref ref="CONSOLE"/> </root> <!-- 单独让参数绑定日志输出到控制台,不受根级别限制 --> <logger name="org.hibernate.type.descriptor.sql.BasicBinder" level="TRACE" additivity="false"> <appender-ref ref="CONSOLE"/> </logger> </configuration>
3. 适配旧版Hibernate
如果使用较旧版本的Hibernate,参数绑定日志的包路径可能不同,可尝试替换配置:
logging.level.org.hibernate.type=TRACE
内容的提问来源于stack exchange,提问作者Aspiring Dev 23000
相关产品推荐
相关产品推荐

