Closed jvnlee closed 1 year ago
도메인 중심 디렉토리 구조를 사용하기로 결정
User API부터 작업을 시작했으므로 기존 entity 패키지에서 User 엔티티만 빼서 새 디렉토리 구조를 적용시킴
Spring Data JPA 방식의 UserRepository 인터페이스를 추가함 커스텀 조회 메서드 2개 추가
UserRepository를 의존성으로 갖는 UserService 클래스를 추가함
회원 가입이나 정보 수정 시, unique 제약이 걸려있는 username과 phoneNumber의 중복을 검증하기 위한 메서드를 구현함 이 때, 회원 정보 수정에서의 검증은 자기 자신의 데이터와 중복으로 인식되지 않도록 함
UserService를 의존성으로 갖는 UserController 클래스를 추가함
응답 타입은 Response라는 커스텀 타입 사용
발생 가능한 예외에 대해 ExceptionHandler 메서드 정의
UserService에 대한 단위 테스트를 작성함
User 엔티티에 UserType enum 필드 추가
User 관련 DTO 추가
구현 내용
디렉토리 설정
도메인 중심 디렉토리 구조를 사용하기로 결정
User API부터 작업을 시작했으므로 기존 entity 패키지에서 User 엔티티만 빼서 새 디렉토리 구조를 적용시킴
Repository
Spring Data JPA 방식의 UserRepository 인터페이스를 추가함 커스텀 조회 메서드 2개 추가
Service
UserRepository를 의존성으로 갖는 UserService 클래스를 추가함
회원 가입이나 정보 수정 시, unique 제약이 걸려있는 username과 phoneNumber의 중복을 검증하기 위한 메서드를 구현함 이 때, 회원 정보 수정에서의 검증은 자기 자신의 데이터와 중복으로 인식되지 않도록 함
Controller
UserService를 의존성으로 갖는 UserController 클래스를 추가함
응답 타입은 Response라는 커스텀 타입 사용
발생 가능한 예외에 대해 ExceptionHandler 메서드 정의
테스트 코드
UserService에 대한 단위 테스트를 작성함
추가 구현 사항
User 엔티티에 UserType enum 필드 추가
User 관련 DTO 추가