[DataJpa] 데이터 JPA 공통 인터페이스

스프링 데이터 JPA 공통 인터페이스

  • JpaRepository
    • CRUD 및 추가적인 JPA 관련 기능을 제공하는 인터페이스이다.

상속 구조: JpaRepositoryPagingAndSortingRepositoryCrudRepository를 확장합니다.

JpaRepository 주요 기능

  1. CRUD 기능
    • save(S entity): 엔티티 저장 또는 수정
    • delete(T entity): 엔티티 삭제
    • findOne(ID id): 엔티티 조회
    • findAll(...): 모든 엔티티 조회, 정렬 및 페이징 가능
  1. 추가 기능
    • getOne(ID id): 엔티티 프록시 조회
    • flush(): JPA 플러시 수행
    • saveAndFlush(T entity): 저장 후 즉시 플러시
    • deleteInBatch(Iterable<T> entities), deleteAllInBatch(): 배치 삭제

save(S) 메소드

  • 엔티티 식별자
    • 식별자가 없거나 null인 경우 EntityManager.persist()를 호출해 새로운 엔티티로 판단
    • 식별자가 있는 경우 EntityManager.merge()를 호출해 기존 엔티티로 판단

Uploaded by N2T

'자바 > QueryDsl' 카테고리의 다른 글

[DataJpa] 벌크성 수정 쿼리  (0) 2023.11.17
[QueryDSL] 프로젝션과 결과의 반환  (0) 2023.11.15
[DataJpa] 쿼리 메서드 기능  (0) 2023.11.15
[DataJpa] Named Query  (0) 2023.11.15
[DataJpa] Named Query  (0) 2023.11.15