#java
-
결제 웹훅 이중 URL 디코딩 버그 수정으로 서명 검증 안정화
fix: 포인트소멸/사용자출금 Webhook도 이중 URL decode 버그 수정 Webhook 처리 로직에서 꽤 골치 아픈 이슈를 잡았음. 핵심은 이중 URL decode 문제임. 문제 발생 배경 결제대행사 Webhook은 POST body로 암호화된 필드를 넘겨주는데, 이 값이 URL-encoded 상태로 들어옴. 서버 프레임워크가 Conten
읽기 → -
결제 웹훅 이중 URL 디코딩으로 인한 시그니처 검증 오류 수정
fix: VBANK_CHARGE Webhook 시그니처 검증 시 URL-encoded trstnId를 primary로 변경 Webhook 처리 로직에서 꽤 골치 아픈 이슈를 잡았음. 핵심은 이중 URL decode 문제임. 문제 발생 배경 결제대행사 Webhook은 POST body로 암호화된 필드를 넘겨주는데, 이 값이 URL-encoded 상태
읽기 → -
결제 Webhook 이중 디코딩 버그 수정으로 검증 오류 해결
feat: 스토어 페이지 다국어 지원 및 Webhook 디코딩 로직 추가 Webhook 처리 로직에서 꽤 골치 아픈 이슈를 잡았음. 핵심은 이중 URL decode 문제임. 문제 발생 배경 결제대행사 Webhook은 POST body로 암호화된 필드를 넘겨주는데, 이 값이 URL-encoded 상태로 들어옴. 서버 프레임워크가 Content-Typ
읽기 → -
결제 트랜잭션에 재고·포인트·알림을 원자적으로 묶어 안전성 확보
feat: 법적 확인 모달 및 결제 관련 UI/UX 추가 상품 목록부터 주문까지 이어지는 흐름을 정비했음. 특히 상품 옵션 처리와 페이징, 카테고리 필터가 한 번에 엮이는 부분이 까다로웠음. 상품 옵션 처리 구조 java // 옵션 유무 분기 if (product.hasOption()) { model.addAttribute("options"
읽기 → -
결제 웹훅 이중 디코딩 버그 수정으로 시그니처 검증 안정화
feat: 지갑 및 결제 관련 주요 기능 추가 및 개선 Webhook 처리 로직에서 꽤 골치 아픈 이슈를 잡았음. 핵심은 이중 URL decode 문제임. 문제 발생 배경 결제대행사 Webhook은 POST body로 암호화된 필드를 넘겨주는데, 이 값이 URL-encoded 상태로 들어옴. 서버 프레임워크가 Content-Type: applica
읽기 → -
쇼핑몰 CSS 디자인 토큰 통일과 모바일 스크롤 UX 개선
feat: 쇼핑몰 플랫폼 상품 카테고리 및 공지사항 데이터 등록, JSP/스타일 작업 CSS/SCSS 작업은 눈에 잘 안 보이지만 쌓이면 시스템 전체 일관성에 영향 줌. 이번엔 디자인 토큰 통일과 반응형 최적화가 메인이었음. CSS 변수 통일 작업 컴포넌트마다 4px, 6px, 8px, 12px이 혼재해있었음. 디자인 시스템 기준을 잡고 CSS 변
읽기 → -
쇼핑몰 JSP 화면을 모바일 카드형으로 개편하고 성능 개선
feat: 쇼핑몰 플랫폼 레이아웃 전면 개편 및 추가 기능 구현 JSP UI 작업은 레거시 환경에서 어떻게 사용성을 올릴 수 있는지 계속 고민하게 만듦. 테이블 레이아웃 개선 모바일에서 가로 스크롤 없이 보이게 하는 게 과제였음. 카드형 뷰로 폴백 처리함. jsp <%-- PC: 테이블 형태 --%> <div class="admin-table-w
읽기 → -
쇼핑몰 JSP 서브페이지 모바일 테이블을 카드형으로 개선
feat: 쇼핑몰 플랫폼 서브페이지 JSP 추가 및 초기 데이터 구성 JSP UI 작업은 레거시 환경에서 어떻게 사용성을 올릴 수 있는지 계속 고민하게 만듦. 테이블 레이아웃 개선 모바일에서 가로 스크롤 없이 보이게 하는 게 과제였음. 카드형 뷰로 폴백 처리함. jsp <%-- PC: 테이블 형태 --%> <div class="admin-tabl
읽기 → -
쇼핑몰 플랫폼 CSS 디자인 토큰 통일
feat: 비로그인 접근 차단 인터셉터 추가 및 쇼핑몰 플랫폼 CSS 업데이트 CSS/SCSS 작업은 눈에 잘 안 보이지만 쌓이면 시스템 전체 일관성에 영향 줌. 이번엔 디자인 토큰 통일과 반응형 최적화가 메인이었음. CSS 변수 통일 작업 컴포넌트마다 4px, 6px, 8px, 12px이 혼재해있었음. 디자인 시스템 기준을 잡고 CSS 변수로 통
읽기 → -
키움페이 Webhook 이중 디코딩 버그 수정으로 결제 검증 안정화
feat: 스토어 테마 등록 및 키움페이 Webhook 연동 가이드 추가 Webhook 처리 로직에서 꽤 골치 아픈 이슈를 잡았음. 핵심은 이중 URL decode 문제임. 문제 발생 배경 결제대행사 Webhook은 POST body로 암호화된 필드를 넘겨주는데, 이 값이 URL-encoded 상태로 들어옴. 서버 프레임워크가 Content-Typ
읽기 → -
레거시 JSP에서 모바일 반응형 테이블 구현
feat: FAQ 초기 데이터 등록 및 키움페이 가상계좌 충전 기능 구현 JSP UI 작업은 레거시 환경에서 어떻게 사용성을 올릴 수 있는지 계속 고민하게 만듦. 테이블 레이아웃 개선 모바일에서 가로 스크롤 없이 보이게 하는 게 과제였음. 카드형 뷰로 폴백 처리함. jsp <%-- PC: 테이블 형태 --%> <div class="admin-ta
읽기 → -
패키지 구조 재편과 Service를 Util로 전환한 리팩토링 가이드
docs: 패키지 구조 및 Mapper XML 위치 규칙 문서화 리팩토링은 기능 변경 없이 코드 품질을 올리는 작업임. 이번엔 패키지 구조 정리와 Service 계층을 Util 방식으로 전환하는 게 핵심이었음. 패키지 구조 재편 기존: 기능별 패키지 내 Controller/Service/Mapper 혼재 개선: Controller(web)와 Ut
읽기 → -
금융 핵심 서비스 3개를 정적 유틸로 전환 완료
refactor: 단계 Step 3 - 금융 핵심 Service 3개를 utl/ Util로 전환 리팩토링은 기능 변경 없이 코드 품질을 올리는 작업임. 이번엔 패키지 구조 정리와 Service 계층을 Util 방식으로 전환하는 게 핵심이었음. 패키지 구조 재편 기존: 기능별 패키지 내 Controller/Service/Mapper 혼재 개선: C
읽기 → -
서비스 4개를 Util 계층으로 전환해 패키지 구조 정리
refactor: 단계 Step 2 - 중간 의존성 Service 4개를 utl/ Util로 전환 리팩토링은 기능 변경 없이 코드 품질을 올리는 작업임. 이번엔 패키지 구조 정리와 Service 계층을 Util 방식으로 전환하는 게 핵심이었음. 패키지 구조 재편 기존: 기능별 패키지 내 Controller/Service/Mapper 혼재 개선:
읽기 → -
배치 스케줄링 안정성과 실행 이력 관리 체계 구축
refactor: 단계 Step 1 - 독립 Service 6개를 utl/ Util로 전환 배치 작업은 운영 중에 터지면 치명적이라 스케줄링 설계를 꼼꼼히 해야 함. 배치 설계 원칙 - 멱등성: 동일 조건으로 여러 번 돌아도 같은 결과 - 실패 로그: 어떤 건이 실패했는지 추적 가능해야 함 - 부분 성공: 일부 실패해도 나머지는 처리 계속 - 알림
읽기 → -
금융 이상감지 이력 관리자 조회 기능 구축
feat: 이상감지 관리자 이력 조회 기능 추가 이상감지 기능은 금융 서비스에서 특히 중요함. 비정상 패턴을 자동으로 탐지하고 기록해두는 시스템을 구현했음. 이상 패턴 유형 | 패턴 | 조건 | 조치 | |------|------|------| | 단시간 대량 충전 | 1시간 내 N회 이상 | 경고 + 관리자 알림 | | 비정상 시간대 접근 | 새
읽기 → -
예치금 충전·차감 오류 메시지를 사용자 친화적으로 개선
fix: 예치금 충전/차감 금액 제한 및 에러 메시지 개선 에러 처리는 사용자 경험에 직결됨. 스택 트레이스 그대로 보여주거나, 의미 없는 "오류가 발생했습니다" 메시지는 지양함. 에러 레이어별 처리 BusinessException → 400/422 + 구체적 메시지 AuthException → 401/403 + 리다이렉트 NotFoundExce
읽기 → -
서비스 계층을 정적 유틸로 전환하고 패키지 구조 재편
refactor: JSP 파일 제거 및 예치금 관리 기능 구현 리팩토링은 기능 변경 없이 코드 품질을 올리는 작업임. 이번엔 패키지 구조 정리와 Service 계층을 Util 방식으로 전환하는 게 핵심이었음. 패키지 구조 재편 기존: 기능별 패키지 내 Controller/Service/Mapper 혼재 개선: Controller(web)와 Uti
읽기 → -
페이지빌더 개발 문서 체계 구축
feat: 페이지빌더 스킬 문서 추가 및 미리보기/입력 처리 개선 문서화 작업은 귀찮지만 나중을 위해 꼭 필요함. 특히 외부 API 연동 부분은 레퍼런스 없으면 매번 명세서 다시 뒤져야 함. 문서 구조 .claude/docs/ ├── api-reference.md 외부 API 엔드포인트 정리 ├── architecture.md
읽기 → -
수수료율 단계별 정산 관리 기능 추가
feat: 수수료율 관리 기능 및 JSP 추가 정산 및 수수료 로직은 버그 하나가 금전 오류로 직결되는 영역이라 신중하게 접근해야 함. 수수료 계산 구조 유통 단계별로 수수료가 누적되는 구조임. 최하위 파트너가 가장 높은 요율을 부담하고, 상위로 갈수록 낮아지며 그 차액이 각 단계의 수익임. | 단계 | 요율 | 수익 | |------|-----
읽기 →