Skip to content

feat(application): Application JPA 저장소 구성 #24 - #63

Open
wlyoon921 wants to merge 3 commits into
developfrom
feat/24-application-persistence
Open

feat(application): Application JPA 저장소 구성 #24#63
wlyoon921 wants to merge 3 commits into
developfrom
feat/24-application-persistence

Conversation

@wlyoon921

Copy link
Copy Markdown

Summary

원서작성 및 성적산출 기능의 MySQL JPA 저장소를 구성했습니다.
ERD 기준으로 applicants, middle_school_infos, academic_records, subject_grades, ged_scores, pass_results entity를 분리했습니다.
Spring Data repository와 ApplicantRepository persistence adapter를 추가했습니다.

Related Issue

Related to #24

Scope

In scope:

  • ApplicantJpaEntity
  • MiddleSchoolInfoJpaEntity
  • AcademicRecordJpaEntity
  • SubjectGradeJpaEntity
  • GedScoreJpaEntity
  • PassResultJpaEntity
  • Spring Data JPA repository
  • ApplicantRepository persistence adapter
  • adapter-out Bazel 의존성

Out of scope:

  • migration script
  • admin 합격/불합격 처리
  • 2차 전형 점수 계산
  • 외부 identity 서비스 연동

Implementation

데이터 모델링 기준에 맞춰 지원자, 중학교 정보, 생활기록/성적, 검정고시 성적, 합격 결과를 별도 entity로 분리했습니다.
SubjectGrade와 PassResult는 복합키를 사용해 ERD의 PK 구조를 반영했습니다.
ApplicantPersistenceAdapter는 application 계층의 ApplicantRepository port를 구현합니다.
지원자 생성, 조회, 수정, 성적 정보 저장 흐름을 JPA repository로 처리합니다.

Testing

  • Unit test code: 후속 테스트 PR에서 추가
  • Integration tests: 후속 이슈에서 보완 필요
  • Manual verification: 후속 PR에서 build/test 수행 예정

Deployment Notes

Feature flag: 없음
Migration required: 예, application DB schema 필요
Rollout considerations:

  • dev profile에서는 Hibernate ddl-auto update로 로컬 확인 가능합니다.
  • prod profile에서는 ddl-auto validate 기준으로 운영 schema가 선행되어야 합니다.
  • 합격 결과 처리는 admin 기능과 연동될 예정입니다.

Checklist

  • Matches product/tech requirements
  • Backward compatibility considered
  • Data modeling compatibility considered
  • API success flow verified in a running environment
  • Real persistence adapter connected

@wlyoon921
wlyoon921 requested review from kusuri12-09 and tlgms July 30, 2026 11:29
@wlyoon921 wlyoon921 self-assigned this Jul 30, 2026
@coderabbitai

coderabbitai Bot commented Jul 30, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are limited based on label configuration.

🏷️ Required labels (at least one) (1)
  • ready-for-review
🚫 Excluded labels (none allowed) (2)
  • wip
  • do-not-review

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: a59fb6f4-2871-4110-97e2-9a638e1c5a60

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant