Skip to content

refactor: University 도메인 리팩터링 #334

@whqtker

Description

@whqtker

어떤 부분을 리팩터링하려 하나요?

리팩터링하려는 부분에 대해 간결하게 설명해주세요

AS-IS

  • UniversityInfoForApply 엔티티의 이름이 너무 길어 개발 생산성이 저하된다.
  • 애플리케이션 레벨에는 하나의 사용자가 같은 대학에 여러 번 좋아요를 누를 수 없으나, DB 레벨에 관련 처리가 없어 데이터 무결성을 해친다.
  • University 엔티티를 조회하는 과정에서 N+1 문제가 발생하여 성능이 저하된다.

TO-BE

  • UniversityInfoForApplyUnivApplyInfo 로 간결하게 수정한다.
  • 복합 unique 제약 조건을 설정한다.
  • N+1 문제를 해결하여 불필요한 쿼리를 줄이고 성능이 향상된다.

작업 상세 내용

  • UniversityInfoForApply 엔티티 이름을 UnivApplyInfo 로 수정
  • liked_university 테이블에 복합 unique 제약 조건을 설정
  • 대학 추천 엔드포인트에서 발생하는 N+1 문제를 Fetch Join을 통해 해결

참고할만한 자료(선택)

  • 같은 사용자가 같은 대학에 여러 번 좋아요 누를 수 있는 문제
    Image

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions