티스토리 뷰
반응형
이번 글에서는 QueryDSL 을 사용하면서 로그에서 출력되는 SELECT 쿼리를 심플하게 만들어주는 방법에 대해 설명하고자 합니다.
spring.jpa.properties.hibernate.use_sql_comments=true
이 설정을 적용하면 QueryDSL에서 사용하는 쿼리일 떄, JPQL 에서 생성되는 지저분한 SQL 포맷을 깔끔한 코멘트의 내용으로 확인할 수 있습니다.
예를 들어 Member.java 가 아래와 같다고 가정해보겠습니다.
@Entity
@Getter
@Setter
public class Member {
@Id @GeneratedValue
@Column(name = "member_id")
private Long id;
private String username;
private Integer age;
}
그러면 QueryDSL을 사용하여 기본으로 호출되는 로그를 확인해보면 아래와 같이 뿌려지게 됩니다.
select member0_.member_id,
member0_.username,
member0_age
from member member0_
그래서 위의 properties 를 적용시켜주면 아래와 같이 출력됩니다.
/* // 주석 내용에 포함된 것을 확인할 수 있습니다.
select
member1
from
Member member1
*/ select member0_.member_id,
member0_.username,
member0_age
from member member0_
또, 로그를 출력하는 방법중에 외부 라이브러리인 p6spy 를 추가해주어도 편하게 로그가 확인 가능합니다.
build.gradle
// https://mvnrepository.com/artifact/p6spy/p6spy
implementation 'p6spy:p6spy:3.9.1'
반응형
'Server' 카테고리의 다른 글
Firebase Push 와 관련된 적용사항 (0) | 2022.09.19 |
---|---|
[Java] QueryDSL 테스트 클래스에서 사용하기 (0) | 2022.09.12 |
Java Stream 을 활용한 Sum/Avg/Min/Max 구하기 (0) | 2022.09.11 |
[Java] Random 활용하는 2가지 꿀팁 (0) | 2022.09.08 |
[Java] JPA 복합키 (2개 이상의 PK) 사용할 때 (0) | 2022.09.06 |
[Spring] Content type 'application/x-www-form-urlencoded;charset=UTF-8' not supported (0) | 2022.09.06 |
댓글
공지사항