-
Notifications
You must be signed in to change notification settings - Fork 1
Closed
Description
개요
SonarCloud 정적 분석 결과 발견된 33개의 이슈 중, 서비스 안정성과 유지보수성에 큰 영향을 미치는 3가지 핵심 사안을 우선적으로 리팩토링.
주요 리팩토링 항목
1. @Transactional 내부 호출(Self-Invocation) 문제 해결
- 문제:
TripService등에서@Transactional메서드를this를 통해 내부 호출하고 있음. 이 경우 Spring Proxy가 개입하지 못해 트랜잭션이 적용되지 않음. - 해결: 로직을 별도 서비스로 분리하거나 호출 구조를 개선하여 프록시 메커니즘이 정상 작동하도록 수정.
2. 로깅 시스템 표준화 (System.out → SLF4J/Lombok)
- 문제: 현재
System.out,System.err및 주석 처리된 출력문이 다수 존재. 이는 서버 성능 저하를 유발하고 로그 관리를 불가능하게 함. - 해결:
- Lombok의
@Slf4j도입 log.info(),log.error()등 적절한 로그 레벨 적용- 불필요한 주석 처리된 출력문 삭제
3. 데이터 초기화 로직 개선 및 정규표현식 최적화 (별도의 이슈 및 브랜치에서 작업 예정)
- 문제: 코드 내 데이터 초기화 시 사용되는 정규표현식에 중복된 패턴이 존재하여 성능 저하 및 논리적 오류 가능성이 있음.
- 해결:
- 기존 코드 기반의 Data Initialization 로직을 DB Migration(Flyway 또는 SQL script) 단계로 이관.
- 이관 과정에서 비효율적인 정규표현식 패턴 수정 및 최적화.
작업 체크리스트 (TODO)
- [Phase 1]
TripService트랜잭션 호출 구조 분석 및 수정 - [Phase 2] 전역 프로젝트 내
System.out검색 및log.info등으로 교체 - [Phase 3] 리팩토링 후 SonarCloud 재검토 및 기능 테스트 수행
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels