Spring Data JPA는 Repository 인터페이스 안에 Entity
관련 메소드를 정의하여 사용한다.
이때 Repository 인터페이스의 메소드 작성 규칙이 존재한다.
하나씩 살펴보자
식별자로 Entity 조회: findById
T findById(Id id)
:- 엔티티 객체 반환
- 만약 존재하지 않는 id면
null
반환
Optional<T> findById(Id id)
- 옵셔널 객체 만환
- 만약 존재하지 않는 id면
Option<null>
반환
Entity 삭제: delete
void delete(T entity)
- 엔티티 객체로 삭제
void delete(Id id)
- 아이디로 엔티티 조회 후 삭제
- 내부적으로
findById()
로 객체 탐색 후delete()
메소드 호출
- 만약 삭제할 엔티티가 존재하지 않으면
Exception
발생
Entity 저장: save
- 'void save(T entity)`
- 엔티티 저장 후 반환X
T save(T entity)
- 엔티티 저장 후 Entity 객체 반환
모든 엔티티 조회: findAll
List<T> findAll()
엔티티 갯수 조회: count
long count()
엔티티 존재 여부 조회: existsById
boolean existsById(Id id)
특정 필드 값으로 찾기: findBy필드명
List<T> findBy필드명(필드값)
- 하나의 필드 값으로 찾기
List<T> findBy필드명1And필드명2(필드값1, 필드값2)
- 여러개의 필드 값으로 찾기
++ 그외 다양한 메소드는 공식 문서 참조
Reference
'Spring > Spring Data JPA' 카테고리의 다른 글
[Spring boot / JPA] 스프링 부트 데이터베이스 초기화 (0) | 2024.06.26 |
---|---|
[JPA] Entity 생성 시간 자동 기록하기 (1) | 2024.06.15 |
[Spring Boot/Jpa] DB에 반영되지 않는 Entity 필드 정의하기 (0) | 2024.06.15 |
[Spring Boot / JPA] PK값을 자동으로 증가시키기 (0) | 2024.06.11 |
[Spring/JPA] JPA 개념 (0) | 2024.06.06 |