들어가기 앞서
강의 영상과 강의록
안녕하세요, 3주차 멘토 박유정입니다
2주차에서는 컨트롤러와 서비스 계층을 구현해보았죠.
서비스 계층에서 비즈니스 로직을 수행하려면, 데이터베이스에서 데이터를 조회, 수정, 저장, 삭제할 수 있어야 합니다.
그리고 이 역할을 담당하는 것이 바로 레포지토리 계층입니다.
이번 강의에서는 레포지토리 계층과 JPA의 개념 및 동작 원리를 다루었습니다.
영속성 컨텍스트, 트랜잭션 등 낯설지만 중요한 개념들을 다루니, 꼼꼼하게 공부하시는 걸 추천드립니다!
Spring Data JPA
스프링 부트와 JPA만 사용해도 개발 생산성이 크게 향상되고, 훨씬 편리해집니다.
여기에 Spring Data JPA를 함께 사용하면 JPA를 더욱 쉽게 활용할 수 있습니다!
Spring Data JPA는 레포지토리 구현 클래스 없이 인터페이스만으로 데이터 접근 로직을 작성할 수 있게 해줍니다.
다소 반복적이게 느껴졌던 CRUD 기능도 스프링 데이터 JPA가 기본으로 제공합니다.
강의에서는 소개드리지 않았지만, 궁금하신 분들은 추가로 찾아보셔도 좋을 것 같습니다!
강의나 과제 중 궁금하거나 막히는 부분이 있다면, 디스코드 채널 #백엔드-정규-스터디 또는 디스코드 개인 DM(유정)으로 편하게 연락 주세요
Postman 실습을 위한 파일 내용
member 디렉토리 내부에 아래 파일을 복사, 붙여넣기 해주세요.
Member.java
위 코드의 정체는 4주차 때 엔티티에 대해 학습하면 알 수 있을 겁니다!
과제
목표
•
온라인 쇼핑몰 어드민 프로젝트 레포지토리 계층 구현하기
•
강의 내용 요약 정리하기(wil.md)
온라인 쇼핑몰 어드민 프로젝트 레포지토리 계층 구현
Member, Product, Order에 대한 레포지토리 계층을 구현해주시면 됩니다.
먼저 지난 시간에 작성했던 서비스 계층을 다시 살펴보면서, 각 서비스에서 레포지토리가 어떤 역할을 해야 하는지 정리해 보세요.
그다음, JPA의 CRUD 동작 과정을 떠올리며 코드를 작성해봅시다.
원하시는 분들은 작성한 레포지토리 코드가 잘 작동하는지 Postman을 활용해 직접 API를 테스트해 보세요!
회원 기능
상품 기능
주문 기능
강의 내용 정리
3주차 강의 내용을 week3/wil.md에 정리해주세요.
제출해야 할 파일과 파일 경로
week3/
└── wil.md
shop/
└── src/
└──── main/
└────── java/
└──────── com.example.shop
├── member (멤버)
│ ├── MemberController.java
│ ├── MemverService.java
│ ├── MemberRepository.java
│ ├── Member.java [과제 페이지 복붙하세요]
│ └── dto
│ ├── MemberUpdateRequest.java
│ └── MemberCreateRequest.java
│
├── product (상품)
│ ├── ProductController.java
│ ├── ProductService.java
│ └── ProductRepository.java
├── order (주문 내역)
│ ├── OrderController.java
│ ├── OrderService.java
│ └── OrderRepository.java
└── config
.
.
.
YAML
복사
마감 기한
11월 4일 (화) 23시 59분까지 제출해주세요!
제출 방법
자신의 레포지토리에 week3 폴더를 생성해 wil.md 파일을 제출합니다.
더 자세한 사항은 아래 링크를 참조해주세요.
