문서의 이전 판입니다!
Spring Boot QueryDSL 사용
@ManyToOne를 사용할 경우 (fetch = FetchType.LAZY)를 항상 사용할 것 Entity는 기본 생성자가 있어야 됨 toString에서는 연관관계를 피해야 됨 Querydsl 장점 오타를 미리 방지할 수 있음 쿼리를 자바 코드로 작성 Querydsl은 결국에는 JQPL 빌더 역할임 use_sql_comments: true <- jqpl 보여줌 count 조건이 간단하면 count, contents 쿼리를 각각 실행하는게 효율적임 다양한 타입이 오면 Tuple 사용 <- 실무에서는 잘 사용하지 않음 쎄타 조인은 leftJoin이 되지 않음. 페치 조인: 실무에서 많이 사용 서브 쿼리: 인라인 뷰는 지원하지 않음(from절 내에서 서브쿼리) 원래는 select에서 서브쿼리가 안되지만 하이버네이트에서 지원 from 절의 서브쿼리 해결방안 1. 서브쿼리를 join으로 변경한다.(높은 확률로 가능할 경우가 많음) 2. 애플리케이션에서 쿼리를 2번 분리해서 실행한다. 3. nativeSQL을 사용한다. SQL AntiPatterns