같은 DTO인데 API마다 필수값이 달랐다: Validation Group을 호출별로 조합한 이유
같은 다운로드 DTO를 재사용하는 레거시 API마다 필수 필드가 달라, 표준 Bean Validation 제약과 호출별 검증 맥락을 분리한 설계 과정입니다.
Spring MVCBean ValidationSpring AOPLegacy Modernization
TOPIC ARCHIVE
기존 호출 계약을 보존하면서 생명주기와 요청 구조를 단계적으로 개선한 기록입니다.
CURATED NOTES
각 글은 하나의 대표 주제에만 분류했습니다. 시리즈가 있는 글에서는 구현 순서와 앞뒤 글도 함께 확인할 수 있습니다.
레거시 현대화 · 5개 글 · 작성일 최신순
같은 다운로드 DTO를 재사용하는 레거시 API마다 필수 필드가 달라, 표준 Bean Validation 제약과 호출별 검증 맥락을 분리한 설계 과정입니다.
브라우저 언어가 아니라 URL과 법인 환경이 언어를 결정하던 시스템에서, 기존 호출 계약을 유지하며 요청 초기에 Locale을 확정한 과정을 정리합니다.
기존 URL과 연계 시스템의 축약형 파라미터 규격은 유지하면서, Spring MVC 확장으로 내부 DTO에 의미가 명확한 필드명을 적용한 과정입니다.
브라우저 팝업 정책에 의존하던 다단계 화면을 Dialog, iframe, postMessage 기반의 단일 흐름으로 전환하고 레거시 호출 경로까지 보존한 과정을 정리합니다.
DB Connection 232개를 단순 누수가 아니라 Pool 객체의 반복 생성 문제로 좁히고, DataSource와 SessionFactory의 생명주기를 애플리케이션 단위로 재설계한 과정입니다.