-
레거시 JSP 관리자 화면을 모바일 대응으로 개선
fix: JSON 파싱 오류 원인 치환 문자열 수정 JSP UI 작업은 레거시 환경에서 어떻게 사용성을 올릴 수 있는지 계속 고민하게 만듦. 테이블 레이아웃 개선 모바일에서 가로 스크롤 없이 보이게 하는 게 과제였음. 카드형 뷰로 폴백 처리함. jsp <%-- PC: 테이블 형태 --%> <div class="admin-table-wrapper
읽기 → -
정산 완료 시 거래명세서 Excel 첨부 이메일 발송 추가
feat: 거래명세서 Excel 생성 및 이메일 첨부 기능 추가 이메일 기능 정비 작업임. 거래명세서를 Excel로 생성해서 이메일에 첨부하는 기능이 핵심이었음. 이메일 발송 구조 java public interface EmailProvider { void send(EmailDto dto); void sendWithAttachment
읽기 → -
JSP 관리자 화면 모바일 대응
feat: JSP 사전 컴파일 방식 및 경로 처리 개선 JSP UI 작업은 레거시 환경에서 어떻게 사용성을 올릴 수 있는지 계속 고민하게 만듦. 테이블 레이아웃 개선 모바일에서 가로 스크롤 없이 보이게 하는 게 과제였음. 카드형 뷰로 폴백 처리함. jsp <%-- PC: 테이블 형태 --%> <div class="admin-table-wrappe
읽기 → -
JSP 워밍업 의존성 주입 조건 분기 버그 수정
fix: JspWarmupRunner 의존성 주입 방식 개선 — 버그 픽스.
읽기 → -
JSP 프리컴파일 전체 GET 엔드포인트 자동 처리 구현
feat: JSP Precompile 개선 - 모든 GET 엔드포인트 자동 처리 기능 구현.
읽기 → -
서버 기동 시 JSP·URL 매핑 사전 초기화 기능 추가
feat: 서버 기동 시 JSP 및 URL 매핑 사전 초기화 기능 추가 기능 구현.
읽기 → -
에러 레이어별 분리로 사용자 친화적 오류 메시지 제공
fix: 사용자 친화적 오류 메시지 처리 개선 에러 처리는 사용자 경험에 직결됨. 스택 트레이스 그대로 보여주거나, 의미 없는 "오류가 발생했습니다" 메시지는 지양함. 에러 레이어별 처리 BusinessException → 400/422 + 구체적 메시지 AuthException → 401/403 + 리다이렉트 NotFoundException →
읽기 → -
JSP 관리자 화면 모바일 반응형
fix: JSP 개발 모드 설정 로컬 환경 분리 JSP UI 작업은 레거시 환경에서 어떻게 사용성을 올릴 수 있는지 계속 고민하게 만듦. 테이블 레이아웃 개선 모바일에서 가로 스크롤 없이 보이게 하는 게 과제였음. 카드형 뷰로 폴백 처리함. jsp <%-- PC: 테이블 형태 --%> <div class="admin-table-wrapper d-
읽기 → -
Apple OAuth 콜백 오류와 세션 유실 문제 해결
feat: 시스템 및 설정 관리 테이블 구조 대규모 업데이트 Apple OAuth가 구글/카카오랑 달리 까다로운 이유가 있음. form_post 방식을 강제하기 때문에 콜백이 POST로 들어오고, 이 과정에서 세션이 끊기거나 CORS 문제가 발생함. Apple OAuth 특이사항 - 콜백이 GET이 아닌 POST (form_post) - 봇 차단
읽기 → -
은행 코드 정비
feat: 은행 코드 관리 및 배너 대상 테이블 삭제 작업 이번 작업의 핵심은 기존 기능 안정화와 코드 일관성 확보였음. 변경 범위가 여러 레이어에 걸쳐있어서 영향 범위를 꼼꼼히 체크했음. 변경 영역 | 레이어 | 파일 수 | 주요 변경 | |--------|--------|---------| | 백엔드 로직 | 0개 | 핵심 처리 로직 개선 |
읽기 → -
인덱스 무효화 쿼리를 범위 조건으로 개선해 SQL 성능 향상
feat: 게시판 통합 관리 서브그룹 생성 및 메뉴 구조 개편 SQL 최적화와 쿼리 구조 개선 작업임. 실행 계획 확인 없이 작성된 쿼리들이 문제가 됐음. 인덱스 활용 패턴 sql -- 비효율: 함수 적용으로 인덱스 무효화 WHERE DATE(created_at) = '2026-03-01' -- 효율: 범위 조건으로 인덱스 활용 WHERE cre
읽기 → -
관리자 UI 반응형 패딩·디자인 토큰 통일
style: 관리자 콘텐츠 영역 및 반응형 패딩 값 조정 CSS/SCSS 작업은 눈에 잘 안 보이지만 쌓이면 시스템 전체 일관성에 영향 줌. 이번엔 디자인 토큰 통일과 반응형 최적화가 메인이었음. CSS 변수 통일 작업 컴포넌트마다 4px, 6px, 8px, 12px이 혼재해있었음. 디자인 시스템 기준을 잡고 CSS 변수로 통일함. scss :r
읽기 → -
권한 어노테이션 메뉴코드를 URL 기반 자동 추출로 전환
refactor: @RequirePermission menuCode 하드코딩 제거, URL 기반 자동 추출로 전환 리팩토링은 기능 변경 없이 코드 품질을 올리는 작업임. 이번엔 패키지 구조 정리와 Service 계층을 Util 방식으로 전환하는 게 핵심이었음. 패키지 구조 재편 기존: 기능별 패키지 내 Controller/Service/Mappe
읽기 → -
관리자 사이드바 자동 스크롤과 브레드크럼 액션 라벨 개선
feat: breadcrumb 마지막 메뉴에 action 라벨 추가 관리자 페이지 네비게이션 정비 작업임. 사이드바 메뉴 구조 개편과 breadcrumb 개선이 핵심이었음. 사이드바 자동 스크롤 javascript const activeMenu = document.querySelector('.sidebar-menu .active'); if (act
읽기 → -
관리자 페이지 사이드바 자동 스크롤과 브레드크럼 개선
fix: breadcrumb 링크 대상 관리자 대시보드로 수정 관리자 페이지 네비게이션 정비 작업임. 사이드바 메뉴 구조 개편과 breadcrumb 개선이 핵심이었음. 사이드바 자동 스크롤 javascript const activeMenu = document.querySelector('.sidebar-menu .active'); if (active
읽기 → -
관리자 화면 디자인 토큰 통일과 모바일 카드 스크롤 개선
style: 관리자 콘텐츠 여백 및 반응형 패딩 조정 CSS/SCSS 작업은 눈에 잘 안 보이지만 쌓이면 시스템 전체 일관성에 영향 줌. 이번엔 디자인 토큰 통일과 반응형 최적화가 메인이었음. CSS 변수 통일 작업 컴포넌트마다 4px, 6px, 8px, 12px이 혼재해있었음. 디자인 시스템 기준을 잡고 CSS 변수로 통일함. scss :roo
읽기 → -
관리자 사이드바 메뉴 구조 개편
feat: 관리자 사이드바 메뉴 구조 개편 및 권한 매핑 개선 관리자 페이지 네비게이션 정비 작업임. 사이드바 메뉴 구조 개편과 breadcrumb 개선이 핵심이었음. 사이드바 자동 스크롤 javascript const activeMenu = document.querySelector('.sidebar-menu .active'); if (active
읽기 → -
JSP 허브 페이지 모바일 반응형
feat: 동적 허브 페이지 구현 및 연락처 관련 UI 개선 JSP UI 작업은 레거시 환경에서 어떻게 사용성을 올릴 수 있는지 계속 고민하게 만듦. 테이블 레이아웃 개선 모바일에서 가로 스크롤 없이 보이게 하는 게 과제였음. 카드형 뷰로 폴백 처리함. jsp <%-- PC: 테이블 형태 --%> <div class="admin-table-wra
읽기 → -
허브 페이지 백엔드 로직 공통화
feat: 허브 페이지 및 공통 코드 기능 추가 이번 작업의 핵심은 기존 기능 안정화와 코드 일관성 확보였음. 변경 범위가 여러 레이어에 걸쳐있어서 영향 범위를 꼼꼼히 체크했음. 변경 영역 | 레이어 | 파일 수 | 주요 변경 | |--------|--------|---------| | 백엔드 로직 | 4개 | 핵심 처리 로직 개선 | | 화면 (
읽기 → -
JSP 관리자 화면 모바일 반응형
feat: 상태 및 유형 표기에 대한 JSP 수정 및 새로운 값 추가 JSP UI 작업은 레거시 환경에서 어떻게 사용성을 올릴 수 있는지 계속 고민하게 만듦. 테이블 레이아웃 개선 모바일에서 가로 스크롤 없이 보이게 하는 게 과제였음. 카드형 뷰로 폴백 처리함. jsp <%-- PC: 테이블 형태 --%> <div class="admin-tabl
읽기 →