Skip to content

Conversation

@2ghrms
Copy link
Member

@2ghrms 2ghrms commented Jan 19, 2026

#️⃣연관된 이슈

close #235

📝작업 내용

작업한 내용을 작성해주세요.

  • Auth 도메인에 대한 공통 리팩토링과 추가 리팩토링

공통 리팩토링

  • Swagger 작성 버전 맞추기로 했던 거로 수정할 것
    • @io.swagger.v3.oas.annotations.parameters.RequestBody 어노테이션을 통하여 모든 요청 페이로드의 명세를 문서에 반영함
  • 정말 필요한 것 아니면 주석 지울 것
    • 추후 인계를 위한 Security 로직 부분 이외의 주석은 최대한 삭제했음
  • import 모듈, 로그, 메소드, 파일 안쓰는 것 모두 지울 것
  • DTO는 record로 변경할 것, 클래스명은 ~~DTO로 통일
  • 컨버터를 두지 말고 DTO record 파일에 static 메소드로 둘 것
    • from이나 of 메소드를 통해서 DTO로 변환 로직 구현
    • 해당하는 경우는 없지만, DTO에서 엔티티로 변환 필요시에는 public 메소드가 필요함
  • 엔티티, DTO에 @NotNull 등의 필드 제약 조건을 명시적으로 잘 달아줄 것 ⇒ entity, DTO 검토
    • 모든 DTO와 엔티티에 적용완료
  • @Schema를 전부 작성하고 example 작성해줄 것
    • 모든 DTO의 필드에 @Schema 작성 및 컨트롤러 단의 description 작성 완료
  • @transactional 서비스 클래스 자체에 달아줄 것
    • 읽기 작업만 있으면 readOnly=true 적용
    • 서비스 단의 메소드에 전부 필요 → 서비스 클래스에 적용
    • 서비스 단에 전부 필요하지 않고 일부 메소드만 필요 → 필요한 메소드에만 적용
  • enum들은 entity/enum 패키지로 옮길 것
    • AuthRealm 이동
  • 필드명에 의도가 드러나지 않으면, 드러내줄 것
    • CommonAuth 필드의 password → hashedPassword

추가 리팩토링

  1. Java Toolchain 문제: settings.gradle에 Foojay resolver 플러그인을 추가해 Java 17을 자동 다운로드하도록 설정했습니다.
  2. 엔티티의 미사용 필드 문제: 마지막 로그인 시점(CommonAuth.lastLoginAt)과 마지막 인증 시간(SSUAuth.authenticatedAt)을 업데이트 하도록 수정했습니다.
  3. 사용하지 않을 엔티티의 필드 삭제: CommonAuth.isEmailVerified 필드 삭제 및 DB 반영

🔎코드 설명(스크린샷(선택))

코드에 대한 설명을 작성해주세요.

💬고민사항 및 리뷰 요구사항 (Optional)

고민사항 및 의견 받고 싶은 부분 있으면 적어두기

비고 (Optional)

참고했던 링크 등 참고 사항을 적어주세요. 코드 리뷰하는 사람이 참고해야 하는 내용을 자유로운 형식으로 적을 수 있습니다.

- `@io.swagger.v3.oas.annotations.parameters.RequestBody` 어노테이션을 통하여 모든 요청 페이로드의 명세를 문서에 반영함
- 정말 필요한 것 아니면 주석 삭제
    - 추후 인계를 위한 Security 로직 부분 이외의 주석은 최대한 삭제했음
- import 모듈, 로그, 메소드, 파일 안쓰는 것 모두 지울 것
- DTO는 record로 변경, 클래스명은 ~~DTO로 통일
- 컨버터를 두지 말고 DTO record 파일에 static 메소드로 둘 것
    - from이나 of 메소드를 통해서 DTO로 변환 로직 구현
- 엔티티, DTO에 @NotNull 등의 필드 제약 조건을 명시적으로 달아줌
    - 모든 DTO와 엔티티에 적용완료
- @Schema를 전부 작성하고 example 작성
    - 모든 DTO의 필드에 @Schema 작성 및 컨트롤러 단의 description 작성 완료
- @transactional 서비스 클래스 자체에 달아줄 것
    - 읽기 작업만 있으면 readOnly=true 적용
    - 서비스 단의 메소드에 전부 필요 → 서비스 클래스에 적용
    - 서비스 단에 전부 필요하지 않고 일부 메소드만 필요 → 필요한 메소드에만 적용
- enum들은 entity/enum 패키지로 옮길 것
    - AuthRealm 이동
@2ghrms 2ghrms self-assigned this Jan 19, 2026
@2ghrms 2ghrms added the ♻️ refactor Refactor code label Jan 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

♻️ refactor Refactor code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants