AOP (Aspect Oriented Programming)
- 관점지향 프로그래밍
- MVC 웹 어플리케이션에서는 Web Layer, Business Layer, Data Layer 로 정의
- Web Layer: REST API 제공, Client 중심의 로직 적용
- Business Layer: 내부 정책에 따른 logic 개발, 주로 해당 부분을 개발
- Data Layer: 데이터베이스 및 외부와의 연동 처리
주요 Annotation
횡단 관심
- AOP 는 메소드들 또는 특정 구역에 반복되는 로직들을 한 곳으로 몰아서 코딩을 할 수 있게 해줌
- 공통적인 기능들 로그
- 통신
- 메서드 실행 시간 확인
- 인코딩, 암호화 기능
예제
- 메서드 실행 시 argument와 return 값에 대한 추적 log
- 메서드 실행 시 실행시간 추적
ParameterAop.java @before, @AfterReturning 어노테이션 주석처리
- 전, 후로 데이터 변경 (많이 쓰이진 않지만 인코딩, 암호화할 경우)
feat. 패스트캠퍼스 - Java/Spring 웹 개발 마스터 초격차
'다시 웹, 백엔드로 > 스프링' 카테고리의 다른 글
여러가지 Annotation (0) | 2024.06.02 |
---|---|
Object Mapper 활용 (0) | 2024.06.02 |
IoC / DI (0) | 2024.06.01 |
스프링의 핵심 (0) | 2024.05.31 |
Object Mapper (0) | 2024.05.31 |