EntityManager , JpaReopsitory
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)
[질문 내용]
안녕하세요 spring 강의를 듣고 혼자 구글링을 통해 연습을하다가 다시 인강으로 돌아온 수강생입니다! 혼자 연습할 때 리포지토리를 작성할 경우 JpaRepository를 extends 하여 사용하였습니다. 이때 em의 역할까지 자동으로 해주는것같아 엔티티 메니저는 사용하지않았습니다. 구글링을 더 해보니 CrudRepository등도 존재하는 것을 알게 되었습니다.
여기서 질문은 보통 어느 방식을 선택하는지 궁금합니다. 상황에 맞는 방법이 있는 것인지 아니면 추세가 변하여 요즘은 어떤 것을 주로 쓴다는 흐름이 있는 것인지 궁금합니다!
Câu trả lời 2
1
안녕하세요, taehee1129 님! 공식 서포터즈 codesweaver 입니다.
말씀하신 CrudRepository, JpaRepository는 위계관계를 갖습니다.
Repository 라는 인터페이스를 다음 순서로 구현하고 있습니다.
Repository
CrudRepository
PagingAndSortingRepository
JpaRepository
하위 인터페이스일수록 상위 인터페이스 + 고유 인터페이스를 제공합니다. 그러니 JpaRepository를 이용하면 상위 인터페이스의 모든 기능을 사용할 수 있습니다. JPA 를 이용하는 환경에서는 JpaRepository를 사용하시면 됩니다.
감사합니다.
1
안녕하세요 taehee1129님!
네 맞습니다.
Class 가 Interface를 상속하는 경우 상속이란 표현대신 '구현'(implements)이라 하고,
Interface가 interface를 상속하는 경우는 그대로 상속(extends)라 표현 합니다 :)
상속이든 구현이든 부모 클래스가 가진 기능 + 자식의 고유 기능을 추가(확장) 하는 것으로 이해하시면 됩니다.
0
******추가******
JpaRepository 소스들을 읽어보니 제공하는 메소드들에 em의 동작들을 작성되어있는 것을 확인하였습니다! 다른 질문들은 해결하지못했습니다
sdk 설정 오류
0
44
2
오탈자 - @Transactional
0
53
1
src/test/resources 테스트 경로 문제
0
49
1
상품 등록후 H2 db 출력 순서 바꿀 수 있나요?
0
62
1
MemberRepositoryTest 실행오류
0
73
1
boot 4.x >>> trasasction rolled back log & p6spy(영한님, 수업 자료 업데이트 해주시면 감사하겠습니다!!)
1
182
2
강의 마지막 QueryDSL 사용 부분 질문있습니다
1
136
2
클라이언트에서 isbn과 author 수정 요청을 한 경우에 대해 질문드립니다.
0
50
1
도메인 모델 패턴 vs 트랜잭션 스크립트 패턴
0
71
1
기본 생성자
0
59
1
h2 DB 연결시 jdbc url 변경 이유가 궁금합니다.
0
100
1
멤버서비스테스트 부분에서 막힙니다.
0
163
4
실무에서도 EntityManager를 이용해서 많이 작업하는 편일까요?
0
115
1
초반에 h2 다운로드 과정 꼭 필요한가요?
0
117
2
자신 필드에도 get으로 접근하는 이유가 있을까요?
0
108
1
24분 27초 연관관계 편의 메서드 위치
0
112
1
단건 주문만 가능하게 한건 의도한 부분이신가요?
0
106
2
빌드 툴, Gradle
0
57
1
h2연결은 된 것 같은데 엔티티 테이블까지 작성 후 확인해보아도 테이블이 안보입니다
0
73
2
Repository에서 EntityManager 주입 방식 차이
0
87
1
롬복과 사용자 정의 setter 메서드
0
70
1
주문 목록 조회 fetch join 질문드립니다
0
80
1
dirty checking 질문드립니다.
0
79
1
동시성 관련 질문입니다
0
72
1


