AOP 2

[Spring Boot] Spring AOP를 활용한 Logging

기본적으로 함수 시작 전, 종료 후, 에러 발생 후 시점을 기준으로 자동으로 로그를 생성하도록 Aspect를 만들어서 설정할 수 있습니다. execution() 안에서 로그를 자동으로 남길 범위를 정할 수 있습니다. 로깅이 필요하지 않은 함수들은 @NoLogging 어노테이션을 만들어서 처리할 수 있습니다. (민감 정보를 가지고 있거나 로깅이 필요하지 않는 함수 등) Advice 실행 시점 설명 @Before 함수 시작 전 함수가 속한 클래스 이름, 함수 이름, 함수로 들어온 파라미터(args) 등을 로그로 남깁니다. @AfterReturning 함수 시작 후 함수가 속한 클래스 이름, 함수 이름, 함수가 반환한 값(result) 등을 로그로 남깁니다. @AfterThrowing 에러 발생 후 함수가 속..

[Spring Boot] Filter, Interceptor, AOP 차이 및 정리

Spring Boot를 사용하면 애플리케이션의 공통 기능을 개발하고 관리하는데 매우 효과적인 다양한 기능을 제공한다. 예를들어 로그인 관련 (세션 체크) 처리, 권한 체크, XSS(Cross Site Script) 방어, PC와 모바일웹의 분기처리, 로그, 페이지 인코딩 변황 등이 있다. 이러한 기능 중에는 Filter, Interceptor, Aspect-Oriented Programming (AOP) 등이 있다. 각각의 기능은 애플리케이션의 요청 처리 과정에서 앞, 중간, 뒤에 추가하여 특정한 작업을 수행하도록 해주며, 코드의 재사용성과 모듈성을 높여준다. (모든 페이지마다 공통 업무에 관련된 코드를 작성하면 중복된 코드가 많아지고 서버에 부하를 줄 수도 있으며 소스 관리도 어렵다.) Intercep..

반응형