쿼리 DSL 전략
도입이유 :
쿼리문의 안정성과 편의성 보완
문제사항:
1. 복잡한 로직을 작성할 경우 JPQL문자열이 상당히 길어짐
2. JPQL문자열에 문제가 있을 경우, 해당 쿼리를 요청해야만 문제가 있는지 확인 가능함 (런타임 오류가 발생)
해갈방안 :
1. QueryDSL을 이용하여, 자동완성 등 IDE(통합 개발 환경)이용
2. 코드 작성 시점에서 문법 오류를 확인
의견조율 :
Dto조회와 복잡한 WHERE 조건을 사용할 경우, QueryDSL을 사용하기로 함
.where(item.bag.userId.eq(userId), item.status.between(0, 2))
의견 결정 :
간단한 쿼리문은 JPA문으로 쿼리요청 (FindById)
복잡한 쿼리문과 Dto로 요청시 QueryDSL을 이용하기로 함
불가피한 경우에는 MySQL 콘솔을 이용하여 DB자료를 확인하면서 JPQL문으로 작성 함
참고
https://tecoble.techcourse.co.kr/post/2021-08-08-basic-querydsl/
Spring Boot에 QueryDSL을 사용해보자
1. QueryDSL PostRepository.java Spring Data JPA가 기본적으로 제공해주는 CRUD 메서드 및 쿼리 메서드 기능을 사용하더라도, 원하는 조건의 데이터를 수집하기 위해서는 필연적으로 JPQL…
tecoble.techcourse.co.kr
https://goguming2.tistory.com/92?category=932343
QueryDSL 공부하기 - 2
Query Dsl https://velog.io/@youngerjesus/%EC%9A%B0%EC%95%84%ED%95%9C-%ED%98%95%EC%A0%9C%EB%93%A4%EC%9D%98-Querydsl-%ED%99%9C%EC%9A%A9%EB%B2%95 우아한 형제들의 Querydsl 사용법 이 글은 "우아한테크콘서..
goguming2.tistory.com
https://www.youtube.com/watch?v=zMAX7g6rO_Y&feature=youtu.be
'공부 > 트러블슈팅' 카테고리의 다른 글
실전프로젝트 배포후 오류발생 (0) | 2022.05.26 |
---|