백엔드 개발/플젝 리팩토링
05. [Mybatis에서 JPA로] 기능 목록 정리 및 엔티티 설계
dev.ojin
2024. 1. 28. 19:17
기능 목록
- 회원 기능
- 회원 가입
- 회원 로그인 / 로그아웃
- 회원 조회
- 호텔 예약 기능
- 호텔 예약 주문
- 호텔 예약 조회
- 호텔 예약 취소
- 공지사항
- 공지사항 글 등록
- 공지사항 글 조회
- 공지사항 글 수정
- 공지사항 글 삭제
- 기타 요구사항
- 호텔 객실 잔여 객실(재고) 관리 필요
- 호텔의 종류는 서울 지역으로 국한됨
- 호텔을 카테고리로 구분 할 수 있다 (카테고리 고민..어떤 카테고리로 묶을것인가..)
도메인 모델과 테이블 재설계
- 회원은 여러 호텔 예약을 할 수 있다. 그리고 한 번 주문할 때 여러 호텔(상품)을 선택할 수 있다. (장바구니에 담아서 한꺼번에 결제 가능)
- 회원 : 주문의 관계는 '1 : 多 관계'
- 주문 : 호텔(상품)의 관계는 '多 : 多 관계' -> ERD DB에서나 엔티티에서도 다대다 관계는 거의 사용하지 않기 때문에, 중간에 '주문상품'이라는 엔티티 추가하여 '多 : 多 관계'를 '多 : 1 관계'로 풀어놓았다.
- 호텔 분류는 어떠한 기준을 잡아, 어떻게 카테고리를 분류할 것인지 (이는 고민중)