본 게시글은 하단 강의를 듣고 학습한 내용을 제 생각으로 요약, 정리한 글입니다.
1. 회원 리포지토리 개발
1) 구현 기능
2) 구현 순서
3) 회원 엔티티
jpabook/jpashop/domain/Member.java
- 속성: 회원id(PK), 이름, 주소, 주문list
- 주문list는 일대다 관계인 회원-주문 관계로 인해 생김
4) 회원 리포지토리
jpabook/jpashop/repository/MemberRepository.java
- jpql과 sql 차이
- sql은 테이블을 대상으로 query함.
- jpql은 엔티티 객체를 대상으로 query함.
2. 회원 서비스 개발
1) 회원 서비스
jpabook/jpashop/service/MemberService.java
2) 여러 가지 주입 방법 비교
- setter injection
- 정의)
- 장점)
- test code 작성 시 mock 직접 주입 가능.
- 즉, memberRepository 바꿀 수 있음. 가짜 memberRepository 주입 가능.
- 단점) 런타임에 바꿀 일 없음