SQL 보기 옵션

dongbin_Shin·2021년 10월 21일
1

spring boot를 사용할 때 실제로 쿼리가 어떻게 나가는지 봐야 할 경우가 많다.
그럴때 사용할 수 있는 옵션을 기록해보았다.

sql 보기

DB에 날리는 쿼리를 보여주는 옵션

application.yml

spring:
  jpa:
    properties:
      hibernate:
        show_sql: true

application.properties

spring.jpa.properties.hibernate.show_sql= true

포맷팅하여 보기

쿼리를 좀 더 예쁘게 보고 싶을 때 추가하는 옵션이다.

application.yml

spring:
  jpa:
    properties:
      hibernate:
        format_sql: true

application.properties

spring.jpa.properties.hibernate.format_sql= true

주석 표시

주석을 표시해주는 옵션

application.yml

spring:
  jpa:
    properties:
      hibernate:
        use_sql_comments: true

application.properties

spring.jpa.properties.hibernate.use_sql_comments= true

sql 보기 (logger)

위에서 본 sql 보기(system.out) 은 쿼리를 system.out으로 보여주는 것에 반해
이 옵션은 logger를 이용해 쿼리를 보여준다.

application.yml

logging:
  level:
    org:
      hibernate:
        SQL: debug

application.properties

logging.level.org.hibernate.SQL= debug

어떤 값이 들어갔는지 확인

쿼리에 실제 어떤 값이 실려 전송됐는지 확인하기 위한 옵션

application.yml

logging:
  level:
    org:
      hibernate:
        type:
          descriptor:
            sql: trace

application.properties

logging.level.org.hibernate.type.descriptor.sql= trace

위 옵션으로 하면 값과 쿼리가 따로 보이는 단점이 있다.
implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.5.8'를 추가해주면 값과 쿼리를 같이 볼 수 있다.

예제

보편적으로 많이 사용하는 세팅은 아래와 같다.

spring:
  jpa:
    hibernate:
      ddl-auto: create
    properties:
      hibernate:
        #show_sql: true
        format_sql: true

logging.level:
    org.hibernate:
        SQL: debug
        type: trace
profile
멋있는 백엔드 개발자

0개의 댓글