Zrobiłem ściągawkę, która moim zdaniem może być przydatna dla innych. We wszystkich przykładach możesz usunąć format_sql
właściwość, jeśli chcesz zachować zarejestrowane zapytania w jednej linii (bez ładnego drukowania).
Ładnie drukuj zapytania SQL, aby ustandaryzować bez parametrów przygotowanych instrukcji i bez optymalizacji struktury logowania :
application.properties
plik:
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.format_sql=true
application.yml
plik:
spring:
jpa:
show-sql: true
properties:
hibernate:
format_sql: true
Ładnie drukowane zapytania SQL z parametrami przygotowanych instrukcji przy użyciu struktury logowania :
application.properties
plik:
spring.jpa.properties.hibernate.format_sql=true
logging.level.org.hibernate.SQL=DEBUG
logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE
application.yml
plik:
spring:
jpa:
properties:
hibernate:
format_sql: true
logging:
level:
org:
hibernate:
SQL: DEBUG
type:
descriptor:
sql:
BasicBinder: TRACE
Ładnie drukowane zapytania SQL bez parametrów przygotowanych instrukcji za pomocą struktury logowania :
application.properties
plik:
spring.jpa.properties.hibernate.format_sql=true
logging.level.org.hibernate.SQL=DEBUG
application.yml
plik:
spring:
jpa:
properties:
hibernate:
format_sql: true
logging:
level:
org:
hibernate:
SQL: DEBUG
Źródło (i więcej szczegółów): https://www.baeldung.com/sql-logging-spring-boot