SpringDataJPA

스프링 데이터 JPA 소개(부재 - 편리한 개발)

쿠카이든 2022. 6. 19. 12:25
728x90
  • 스프링 데이터 JPA는 스프링 프레임워크에서 JPA를 편리하게 사용할 수 있도록 지원하는 프로젝트
  • 이 프로젝트는 데이터 접근 계층을 개발할 때 지루하게 반복되는 CRUD 문제를 세련된 방법으로 해결한다.
  • 그 방법은 리포지토리를 개발할 때 인터페이스만 작성하면 실행 시점에 스프링 데이터 JPA가 구현 객체를 동적으로 생성해서 주입해준다.
  • 따라서, 데이터 접근 계층을 개발할 때 구현 클래스 없이 인터페이스만 작성해도 개발을 완료할 수 있다.
public interface MemberRepository extends JpaRepository<Member, Long>{
    Member findByUsername(String username);
}

public interface ItemRepository extends JpaRepository<Item, Long> {
}

스프링 데이터 JPA 클래스 다이어그램 - 여러 기본 구현체 사용 가능

  • 그런데, MemberRepository.findByUsername(...)처럼 직접 작성한 공통으로 처리할 수 없는 메소드는 어떻게 해야할까?
  • 메소드 이름을 분석해서 다음 JPQL을 실행한다.
select m from Member m where username =:username

 

출처 : JAVA 표준 ORM JPA 프로그래밍 (저자 김영한)

728x90

'SpringDataJPA' 카테고리의 다른 글

페이징과 정렬  (0) 2022.06.21
@Query 와 파라미터 바인딩  (0) 2022.06.21
JPA Named Query(메소드 이름으로 JPA Named 쿼리 호출)  (0) 2022.06.20
스프링 데이터 JPA 설정  (0) 2022.06.20