Spring Data JPA
Spring Data JPA
Spring Data JPA
- JPA에서
repository
를 제작할 때 마다 CRUD 메소드를 작성해야 함 Spring Data JPA
는 CRUD 메소드를 직접 작성할 필요 없이, 자동으로 제공해 주는 라이브러리- 이를 통해 구현 클래스 없이 인터페이스만으로 개발이 가능
- 핵심 비즈니스 로직 작성에 집중 가능
- JPA를 잘 아는 상태에서 사용하는 것이 추천됨
사용 방법
- 사용할
repository
를 인터페이스로 선언하고,JpaRepository
를 상속받음JpaRepository
의 제너릭에는 사용할 객체(엔티티)와 해당 객체에서 PK로 사용할 자료형을 줘야 함- 아래 예시는
Long
을 PK로 가지는Member
라는 객체를 사용
- 이
repository
에서 기본적인 CRUD 메소드들을 사용 가능- 아래 예시는
findByName
메소드를 선언하는 경우 name
에 해당하는Member
객체를 반환하는 메소드가 자동으로 생성- 별도의 구현을 작성할 필요가 없음
- 메소드 이름을 바탕으로 쿼리를 만들어 줌
- 아래 예시는
public interface SpringDataJpaMemberRepository extends JpaRepository<Member,Long> {
Optional<Member> findByName(String name);
}
References
- 스프링 입문 - 김영한 (https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%EC%9E%85%EB%AC%B8-%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8)
- https://devraphy.tistory.com/622