반응형
프로젝트 중 보안관련해서 Admin 사이트의 접속 및 활동, 다운로드 등 전반적인 로그를 DB에 적재를 해야했다.
페이지별 기능별 로그를 기록하기위한 방법으로
2가지가 있었는데,
1. 일일히 Controller마다 로그repository를 추가하여 로직구성
2. AOP를 활용하여 로그기록
페이지나 기능은 많이 없는 Admin 사이트이지만..
일일히 비슷한 코드구성을 복붙하기엔 너무 막노동으로 생각해서 AOP를 활용해보기로 결정했다.
Aspect로 모듈화하고 핵심적인 비즈니스 로직에서 분리하여 재사용하는게 차후 기능추가가 되도 유지보수가 용이할것이라는 판단이었다.
주로 사용한 어노테이션
- Aspect : 주로 부가기능을 모듈화함.
- PointCut : 적용할 지점 설정.
- Before 혹은 Around, AfterReturning : PointCut으로 적용된 지점이 수행되기 전이나 수행될 때, 아니면 이후로 시점 적용
반응형
'IT 개발 > Spring' 카테고리의 다른 글
AOP를 사용한 로그 DB에 저장(코드포함) (0) | 2024.07.09 |
---|---|
@Scheduled Open API사용하여 공휴일 DB 적재하기 (1) | 2023.12.05 |
Spring boot 에서 XSS Filter 적용하기 (2) | 2023.12.01 |
WebConfig에 설정된 경로 중 일부 API 예외처리 (2) | 2023.12.01 |