querydsl3 [JPA] Spring DATA JPA Querydsl - 3 QuerydslPredicateExecute를 이용한 상품 조회 예제 itemRepository.java public interface ItemRepository extends JpaRepository, QuerydslPredicateExecutor { } QueryDslPredicateExecute 인터페이스 ItemRepositoryTest.java package com.shop.repository; import com.querydsl.core.BooleanBuilder; import com.querydsl.jpa.impl.JPAQuery; import com.querydsl.jpa.impl.JPAQueryFactory; import com.shop.constant.ItemSellStatus; imp.. 2023. 7. 19. [JPA] Spring DATA JPA Querydsl - 2 ItemRepositoryTest.java //영속성 컨텍스트를 사용하기 위해 @PersistenceContext어노테이션을 이용해 //EntityManager빈을 주입 @PersistenceContext EntityManager em; @Test @DisplayName("Querydsl 조회테스트1") public void queryDslTest(){ this.createItemList(); //JPAQueryFactory를 이용해서 쿼리를 동적으로 생성 //생성자의 파라미터로 EntityManaver 객체를 넣어줌 JPAQueryFactory queryFactory = new JPAQueryFactory(em); //Querydsl을 통해 쿼리를 생성하기 위해 플러그인을 통해 자동으로 생성된 Qite.. 2023. 7. 18. [JPA] Spring DATA JPA Querydsl - 1 Querydsl이란? - @Query어노테이션 안에 JPQL문법으로 문자열을 입력하기 때문에 잘못 입력하면 컴파일 시점에 에러를 발견할 수 없다. - Querydsl은 JPQL을 코드로 작성할 수 있도록 도와주는 빌더 API - Querydsl은 소스코드로 SQL문을 문자열이 아닌 코드로 작성하기 때문에 컴파일러의 도움을 받음 - 개발자에게 오타가 있음을 알림 Querydsl 장점 - 고정된 SQL문이 아닌 조건에 맞게 동적으로 쿼리를 생성 - 비슷한 쿼리를 재사용할 수 있으며, 제약 조건 조립 및 가독성을 향상 - 문자열이 아닌 자바 소스코드로 작성, 컴파일 시점에 오류를 발견 - IDE의 도움을 받아서 자동 완성 기능을 이용, 생산성을 향상 pom.xml //querydsl.version : .. 2023. 7. 17. 이전 1 다음