querydsl

JPA에서 골치아픈 N+1 문제 해결방법을 몇가지 정리한다. N+1 문제 => ORM에서 많이 발생하는 문제 Entity에 대해 하나의 쿼리로 N개의 레코드를 가져왔을 때, 연관관계 Entity를 가져오기 위해 쿼리를 N번 추가적으로 수행하는 문제 N+1 문제에 대해 흔히들 하는 오해 N+1 문제는 EAGER Fetch 전략때문에 발생한다? X, LAZY로 설정했더라도 연관 Entity를 참조하면 그 순간 추가적인 쿼리가 수행됨 findAll()메서드는 N+1 문제를 발생시키지 않는다? Fetch전략을 적용해서 연관 Entity를 가져오는 것은 오직 단일 레코드에 대해서만 적용 단일 레코드 조회가 아닌 경우(JPQL을 수행하는 경우, findAll() 메서드 역시 이 경우) 해당 JPQL을 먼저 수행(E..
SELECT * FROM TABLE WHERE REPLACE(column_name, ' ', '') = 'val'; 위의 replace 함수를 QueryDsl에서는 어떻게 사용할까? 1번 Expressions.stringTemplate("replace({0},' ','')", column_name) 2번 StringExpression se = StringTemplate.create("replace({0}, ' ', '')", column_name); return select().from(o).where(se.eq('aaa')).list(o);
쿼리를 문자가 아닌 코드로 작성할 수 있으며, 쉽고 간결하며 그 모양도 쿼리와 비슷하게 개발할 수 있음 www.querydsl.com/static/querydsl/3.6.3/reference/ko-KR/html_single/ 1. QueryDSL 설정 필요 라이브러리 com.mysema.querydsl querydsl-jpa 3.6.3 com.mysema.querydsl querydsl-apt 3.6.3 querydsl-jpa : QueryDSL JPA 라이브러리 querydsl-apt : 쿼리 타입(Q)을 생성할 때 필요한 라이브러리 환경설정 com.mysema.maven apt-maven-plugin 1.1.3 process target/generated-sources/java com.mysema.q..
깡냉쓰
'querydsl' 태그의 글 목록