java3 [JPA] 실전! 스프링 데이터 JPA Part4. 확장 기능 1. 사용자 정의 리포지토리 구현 - 스프링 데이터 JPA 리포지토리는 인터페이스만 정의하고 구현체는 스프링이 자동생성 - 스프링 데이터 JPA가 제공하는 인터페이스를 직접 구현하면 구현해야 하는 기능이 너무 많음 - 동적 쿼리를 위한 queryDsl을 사용하기 위해서 인터페이스의 메서드를 직접 구현하고 싶다면 어떻게 해야 할까? 1) 사용자 정의 인터페이스 public interface MemberRepositoryCustom { List findMemberCustom(); } 2) 사용자 정의 인터페이스 구현 클래스 @RequiredArgsConstructor public class MemberRepositoryImpl implements MemberRepositoryCustom { private f.. 2022. 10. 13. [JPA] 실전! 스프링 데이터 JPA Part1. 예제 도메인 모델 Spring Data JPA는 JPA를 편리하게 사용하기 위해 도와주는 기술이다. 기존 JPA를 사용할 때는 JPQL 문법으로 JPA를 사용했지만, 스프링 데이터 JPA를 사용하면 보다 쉽게 JPQL을 사용할 수 있도록 도와준다. 현재 담당하고 있는 프로젝트의 경우 JPA기반의 프로젝트로 70%는 스프링 데이터 JPA를 활용하고 나머지 30%는 queryDsl을 사용한다. 스프링 데이터 JPA를 배우기 위해 인프런에서 강의를 듣고 복습할 겸 내용을 정리해보는 시간을 가져봤다. 강의는 인프런에서 김영한님이 교육해주시는 강의를 듣고 정리하였다. https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%EB%8D%B0%EC%9D%B4%ED%84%B0-JPA-.. 2022. 10. 13. 5. Spring Batch 청크 프로세스 활용 Step3 - ItemReaderAdapter 지금까지 Cursor 기반, Paging 기반 ItemReader에 대해 알아보는 시간을 갖었다. 추가적으로 배치 Job안에서 이미 존재하는 Dao 또는 다른 서비스를 ItemReader안에서 사용하고자 할때 위임 역할을 하는 것이 ItemReaderAdapter이다. 해당 내용은 간단해서 바로 소스 코드 작성하면서 이해해보자. 1) CustomerService 클래스 생성 public class CustomerService { public int cnt = 0; public T customRead() { return (T) ("item" + cnt++); } } 2) ItemReaderAdapterConfiguration 클래스 생성 @Configuration @RequiredArgsConstr.. 2022. 10. 3. 이전 1 다음