관리 메뉴

"게임 개발자"를 향한 매일의 공부일지 _ 1기

Spring AOP 3 - AOP의 주요 프레임워크 소개 본문

웹 개발/Spring

Spring AOP 3 - AOP의 주요 프레임워크 소개

huenuri 2024. 12. 31. 18:12

다음으로는 AOP의 프레임워크에 대해서 알아보겠다. 이번 시간에는 Spring AOP와 AspectJ의 차이점에 대해서 주로 살펴보게 된다.


 
 
 
 
 

이론 3 - AOP의 주요 프레임워크 소개

 

스프링에서 제공하는 의존성 주입, 트랜잭션 등과 밀접하게 통합되어 있어 친숙하다.
 
 
 
 

프록시 기반이라는 말은 런타임 시에 객체의 프록시를 생성하고 프록시를 통해 관심사를 적용한다는 것을 의미한다. 통합성은 스프링의 다른 기능과 연동된다. 개발자는 XML이나 어노테이션을 통해 AOP를 설정할 수 있어 코드를 변경하지 않고도 AOP를 사용할 수 있는 장점을 제공한다.


 
 
 

AspectJ는 컴파일 시점과 로그 시점에 거쳐 다양한 위빙 옵션을 제공한다. 런타임이 더 강력하고 성능이 좋은 AOP를 구현할 수 있다.
 
 
 
 

컴파일 시 실행되는 시점을 지정하고 있고 이는 보다 세밀한 AOP의 적용이 가능하다.
 
 
 
 

각각의 프로그램이 제공하는 기능과 프로젝트의 요구사항을 잘 비교해야 한다.


 
 
 
 

실습 1 - AOP의 주요 프레임워크 소개

 


 
 

BasicLoggerAspect


 
 
표현식에 따라 포인트컷을 작성한다.

 
코드를 몇 번이나 수정했는지 모르겠다. 자동 완성 기능이 없으니 오타가 많이 난다.


 
 
 

코드 실행하기

 
 

 
 


 
 
 
 

학습을 마치고

무슨 말인지는 잘 모르겠지만 그래도 일단 작성하고 실습을 해보면 나중에 이해가 되는 경우가 많았다. 이처럼 AOP를 코드를 통해 사용하는 방법에 대해 실습할 수 있어서 좋았다.