繁体   English   中英

如何在 Spring Boot 3/Hibernate 6 中使用查询参数值记录 SQL 语句

[英]How to log SQL statements with query param values in Spring Boot 3/Hibernate 6

我最近将我的 Spring Boot 应用程序升级到 v3.0,这需要将 Hibernate 升级到 v6.1.5.Final。

我使用 Spring Data JPA 和 Hibernate 作为 JPA 提供者。 当我在本地运行应用程序时,我想记录 SQL 语句和这些语句中任何参数的值。 为此,我根据这篇博文将以下内容添加到我的本地配置中:

spring:
  jpa:
    show-sql: false
    properties:
      hibernate:
        format_sql: true
logging:
  level:
    org.hibernate.SQL: debug
    org.hibernate.type.descriptor.sql: trace

我很确定这在升级之前有效,但现在只记录了 SQL 语句,即缺少参数值。

使用 Spring Boot v3.0 和 Hibernate v6.1.5.Final 时是否可以记录查询参数值?

使用 Hibernate 6 在 Spring boot 3 中记录 SQL:

  • logging.level.sql用于 SQL 日志记录组,包括 Hibernate SQL 记录器。
  • logging.level.org.hibernate.orm.jdbc.bind用于显示绑定参数

所以这应该有效:

logging:
  level:
    sql: debug
    org.hibernate.orm.jdbc.bind: trace

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM