Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: 의존성 연결 및 로그인 뼈대코드 구현 #6

Merged
merged 9 commits into from
Aug 1, 2024

Conversation

sosow0212
Copy link
Owner

@sosow0212 sosow0212 commented Aug 1, 2024

📄 Summary

  • feat: 멀티모듈로 분리한다 #3 PR 이후 책임에 맞게 코드를 일부 변경 했습니다.

  • 로그인 기능을 위해 뼈대 코드만 구현했습니다. 추후 회의를 통해 추가 작업이 필요합니다. feat: 로그인 및 기본 뼈대 코드를 생성한다. #4 해당 이슈에서 작업을 진행하시면 됩니다.

    • Member 도메인과 그에 해당하는 Repository를 구현하였고, Presentation, Application 레이어도 간단하게 개발 및 테스트 진행 했습니다.
    • CORS를 임시적으로 와일드카드를 이용해 모든 도메인에 대해 열어놓았습니다. 추후 도메인 구매 후 변경해야합니다!
    • 인증/인가를 위해 jwt 토큰을 사용하였고, Resolver를 사용해서 편리하게 사용할 수 있도록 하였습니다.
  • 테스트 편의

    • 모듈 분리 후 테스트 픽스처 의존을 위해 의존성을 추가했습니다. 이 부분에 대해서는 기술 문서를 통해 상세히 작성한 후 공유드리겠습니다. 간단하게만 설명하면, src아래 testFixtures라는 패키지에 타 모듈에서 의존하는 테스트 픽스처를 만드시면 됩니다.
    • 테스트 격리를 위해 Helper 클래스를 만들었습니다.
    • REST Docs 문서 작성 Helper 클래스를 만들었습니다.
    • WebMvcTest(문서화)에서 컨텍스트를 캐싱할 수 있는 MockInjection 클래스를 만들었습니다. MockBean은 해당 클래스에 선언해주시면 됩니다!
    • 동시성 테스트를 위한 Helper를 만들었습니다.
  • 예외 처리 변경 및 etc

    • 예외 처리의 중복을 없애고자 CustomException, CustomExceptionType을 활용하였습니다. 이 부분 common 모듈 안에 있으니 확인하시고 모르는 부분이 있다면 말씀해주세요!
    • 기존에는 /api/members/...로 api가 프리픽스로 붙었습니다. 이를 yml 설정 파일에서 context-path 속성을 통해 안붙여도 되도록 만들었습니다. 따라서 프로덕션 혹은 테스트 코드에서도 /members/...만 작성하셔도 프리픽스로 api가 붙습니다. 추후 dev, prod 나눠 배포할 때도 도움이 될 것 같아서 이렇게 만들었습니다!

초기 작업이라 코드양이 많아서 보기 힘드실 수 있습니다..!

close #4

@sosow0212 sosow0212 added the feat 기능을 추가합니다 label Aug 1, 2024
@sosow0212 sosow0212 self-assigned this Aug 1, 2024
Copy link
Collaborator

@eom-tae-in eom-tae-in left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

고생하셨습니다!

@eom-tae-in eom-tae-in merged commit a832bc8 into develop Aug 1, 2024
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feat 기능을 추가합니다
Projects
None yet
Development

Successfully merging this pull request may close these issues.

feat: 로그인 및 기본 뼈대 코드를 생성한다.
2 participants