#9 # 배달 플랫폼 도메인 구현 ## 사용자 도메인 개발 - User Entity 구성 -<img width="259" alt="Untitled" src="https://github.com/IMWoo94/toy-delivery/assets/75981576/ee38362a-4141-4988-ac1a-19501837b7be"> - status 컬럼의 경우 enum 객체를 통해서 지정된 데이터만 들어 올 수 있도록 선언 - enum 객체를 컬럼으로 사용 시 @ Enumerated(EnumType.STRING) 를 꼭 선언 할 수 있도록 한다. - @ Enumerated 만 선언하게 되면 enum 의 ordinal 이 DB 데이터로 들어가게 되는데, ordinal 의 경우 enum 객체의 순서를 바꿔버리면 데이터가 뒤죽박죽이 되어버리는 대참사가 일어 날 수 있으니 조심 --- - 사용자 서비스 로직 구현 <img width="811" alt="image" src="https://github.com/IMWoo94/toy-delivery/assets/75981576/9ca57c11-5916-44e1-8a54-50a74921ca8f"> - 동작 흐름 - Controller - UserApiController → 요청 시 Interceptor 에 의해서 인증 처리 후 접근 가능한 Controller - UserOpenApiController → 인증을 거치지 않아도 접근 가능한 Controller - Business → User 서비스와 이외의 여러 서비스에 접근하여 구성 - Service → User 도메인의 서비스만 처리 - Converter → Data 변환 ex) DTO → Entity - 회원 가입 로직 ( 구현 완료 ) - 중복 회원 로직 ( 구현 완료 ) - 로그인 ( 구현 완료 ) - Email 찾기 ( 구현 완료 ) - Password 찾기 ( 구현 완료 ) --- - 사용자 인증 JWT 토큰 적용 - JWT 토큰 생성 및 검증 로직 ( 구현 완료 ) - 로그인 성공 시 Token 정보 응답 결과로 리턴 ( 구현 완료 ) - 로그인 인증 처리 - Interceptor 를 통해 Http Header 의 Token 정보로 검증 - 검증 유효한 경우 RequestContextHolder 를 이용해서 인증 정보를 토대로 사용자 정보 제공 - 사용자 정보를 가져오는 과정을 AOP, ArgumentResolver 를 통해서 Controller 파라미터로 바인딩 처리 하여 받을 수 있도록 구현
#9
배달 플랫폼 도메인 구현
사용자 도메인 개발
-