study/spring | java
[Select Shop] 셀렉샵 만들기 4. 프로젝트 설계
_드레
2021. 6. 6. 19:17
1~3. 에서 Naver API 사용하는거 연습했으니까
이제 프로젝트 설계해 보기 !
[0] 필요 기능 확인
- 키워드로 상품 검색, 결과를 목록으로 보여준다 (naver API)
- 관심상품 등록하기
- 관심상품 조회하기
- 관심상품에 원하는 가격 등록, 그 가격보다 낮은 경우에 표시해주기
[1] API
기능 | Method | URL | 반환값 |
키워드검색, 결과 list | GET | /api/search?query=검색어 | List<ItemDto> |
관심 상품 등록 | POST | /api/products | Product |
관심 상품 조회 | GET | /api/products | List<Product> |
관심상품 가격 등록/표시 | PUT | /api/products/{id} | id |
[2] 3계층 설계
1. Controller
- ProductRestController : 관심 상품 관련
- SearchRequestController : 검색 관련
2. Service
- ProductService : 관심 상품 가격 변경
3. Repository
- Product : 관심 상품 테이블 (DB 저장)
- ProductRepository : 관심 상품 조회, 저장
- ProductRequestDto : 관심 상품 등록하기
- ProductMypriceRequestDto : 관심 가격 변경하기
- ItemDto : 검색 결과 주고받기