티스토리 뷰
System.out.println("memberRepository = " + memberRepository.getClass());
log
memberRepository = class jdk.proxy2.$Proxy123
jpaRepository를 extends한 repository를 로그에 찍어봤다. 정체는 프록시였는데,
스프링jpa가 인터페이스를 보고 구현체를 꼿아버린거다. 구현체를 스프링 JPA가 만들어주기 때문에 인터페이스 만으로 메소드를 다 사용이 가능한 것이다.
제네릭 타입
- T : 엔티티
- ID : 엔티티의 식별자 타입
- S : 엔티티와 그 자식 타입
주요 메서드
- save(S) : 새로운 엔티티는 저장하고 이미 있는 엔티티는 병합한다.
- delete(T) : 엔티티 하나를 삭제한다. 내부에서 'EntityMananger. remove()' 호출
- findById(ID) : 엔티티 하나를 조회한다. 내부에서 'EntityManager.find()' 호출
- getOne(ID) : 엔티티를 프록시로 조회한다. 내부에서 'EntityManager.getReference()' 호출
- FindAll(...) : 모든 엔티티를 조회한다 . 정렬('sort')이나 페이징('Pageable') 조건을 파라미터로 제공할 수 있다.
'dev_공부일지 > spring data JPA' 카테고리의 다른 글
@Query 값 DTO 조회하기 , 파라미터 바인딩 (0) | 2024.03.05 |
---|---|
JPA NamedQuery (0) | 2024.03.05 |
메소드 이름으로 쿼리 생성 (0) | 2024.03.05 |
기본 및 설정 (0) | 2024.03.04 |
Spring Data JPA 소개 (0) | 2024.03.04 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- exception
- 항해플러스
- filter
- react실행
- thymleaf
- rejectValue
- BindingResult
- 향해99
- React
- jpa api
- 리터럴
- 향해플러스
- 인터셉터
- 컨트
- SpringBoot
- 백엔드 개발자 역량
- 백엔드 개발자 공부
- 로그인
- Java
- HTTP
- Intercepter
- 스프링부트
- 스프링공부
- 항해99
- 예외처리
- hypertexttransferprotocol
- JPA
- ArgumentResolver
- reject
- 향해플러스백엔드
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
글 보관함