配置Hibernate显示SQL语句可通过三种方式:在hibernate.cfg.xml中设置show_sql、format_sql和use_sql_comments属性;2. Spring Boot项目在application.yml或properties中配置spring.jpa.show-sql和format-sql;3. 结合Logback等日志框架,将org.hibernate.SQL设为DEBUG级别,BasicBinder设为TRACE以查看SQL及参数值。

配置 Hibernate 显示 SQL 语句
在开发过程中,查看 Hibernate 执行的 SQL 语句有助于调试和优化数据库操作。可以通过修改配置文件或代码设置,让 Hibernate 在控制台输出实际生成的 SQL。
方法一:通过配置文件开启 SQL 输出(推荐)
如果你使用的是 hibernate.cfg.xml 配置文件,添加以下属性:
- hibernate.show_sql:设为 true 可在控制台打印 SQL
- hibernate.format_sql:设为 true 可格式化 SQL,便于阅读
- hibernate.use_sql_comments:可选,添加注释说明 SQL 来源
示例配置:
true true true
方法二:在 Spring Boot 中配置
如果项目基于 Spring Boot,在 application.yml 或 application.properties 中设置:
application.yml:
spring:
jpa:
show-sql: true
format-sql: true
hibernate:
use-new-id-generator-mappings: false
application.properties:
spring.jpa.show-sql=true spring.jpa.format-sql=true
注意:Spring Boot 默认使用 JPA,因此需配置 spring.jpa.* 而非原生 hibernate 属性。
方法三:结合日志框架查看更详细信息
仅开启 show_sql 可能不够灵活。建议配合日志框架(如 Logback 或 Log4j2)启用 Hibernate 的 SQL 日志包:
- 开启 org.hibernate.SQL 日志级别为 DEBUG
- 开启 org.hibernate.type.descriptor.sql.BasicBinder 查看参数绑定值
例如,在 logback-spring.xml 中添加:
这样不仅能看见 SQL,还能看到传入的参数值,极大提升调试效率。
基本上就这些,配置后重启应用,执行持久化操作就能在控制台看到 SQL 输出了。











