DevBoi

[Spring] 스프링의 기초 Aop 맛보기 본문

Develop/[Spring]

[Spring] 스프링의 기초 Aop 맛보기

HiSmith 2022. 1. 10. 17:30
반응형

스프링의 AOP 접근 방식은 타깃 객체에 대한 동적 프록시를 생성하고 설정된 어드바이스를 사용해 객체를 위빙 함으로써 공통 로직을 수행하는 것이다.

 

어드바이스 : before advice, round advice처럼 특정 공통기능의 수행시점을 설정해놓은 것이다. (자세한 내용은 aop관련 공부 포스팅 참고)

위빙 : 어드바이스를 핵심 로직에 적용하는 것을 의미한다. (엮기 라는 순수 표현)

 

스프링의 aop와 aspectJ의 aop라이브러리가 존재한다.

스프링 2.0부터 스프링이 aspectJ와 더욱 강력한 연동기능을 제공한다.

 

- aspectJ방식의 포인트컷 표현식 지원

-스프링 aop를 위빙에 사용하면서 동시에 @aspectJ에노테이션 스타일을 지원

-aspectJ에 구현된 에스펙트를 통한 DI지원

-스프링 applicationContext 내에서 로드시점 위빙 지원

 

aop는 주로로깅으로 예제가 있지만, 스프링에서는 해당 트랜잭션 처리를 aop를 활용하여 처리한다.

대부분은 요구사항은 스프링aop로 처리가 가능하지만, 복잡한 기능의 구현일때는 해당 두가지를 혼용해서 사용하기도 한다. 

 

 

반응형