我制作了一份我认为对其他人有用的备忘单。在所有示例中,如果您想将记录的查询保留在一行中(没有漂亮的打印),您可以删除 format_sql 属性。
Pretty print SQL 查询到标准输出没有预准备语句的参数,也没有优化日志框架:
application.properties文件:
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.format_sql=true
application.yml文件:
spring:
jpa:
show-sql: true
properties:
hibernate:
format_sql: true
漂亮的打印 SQL 查询带有使用日志框架的准备语句的参数:
application.properties 文件:
spring.jpa.properties.hibernate.format_sql=true
logging.level.org.hibernate.SQL=DEBUG
logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE
application.yml文件:
spring:
jpa:
properties:
hibernate:
format_sql: true
logging:
level:
org:
hibernate:
SQL: DEBUG
type:
descriptor:
sql:
BasicBinder: TRACE
漂亮的打印 SQL 查询没有使用日志框架的准备好的语句的参数:
application.properties文件:
spring.jpa.properties.hibernate.format_sql=true
logging.level.org.hibernate.SQL=DEBUG
application.yml文件:
spring:
jpa:
properties:
hibernate:
format_sql: true
logging:
level:
org:
hibernate:
SQL: DEBUG
来源(及更多详情):https://www.baeldung.com/sql-logging-spring-boot