# 예시로 시간을 측정 할 것이다.시간을 측정하고 싶은 메소드들에 @EXAMPLEANNO 를 붙여준다.
# annotaion EXAMPLEANNO 클래스 를 생성하고, @Target을 붙여준다.
----------------------------------------------------------------------------------------------
# ASPECT 정의하기
- 클래스를 생성하여 @Asepct 어노테이션을 추가하여 Aspect를 생성한다. 스프링은 자동으로 이 클래스를 Spring AOP 설정에 반영한다.
# PointCut 정의하기
- JointPoint (결합점) , Advice 를 설정
ㄴ Advice 가 언제 실행되는지 정하는 방법이다.
- @Around( @annotation(EXAMPLEANNO)) 을 붙인 메소드를 생성한다.
- EXAMPLEANNO라는 어노테이션을 타겟으로 지정했고, 그 주변에서 실행되는 결합점 @around로 설정한것
--------------------------------------------------------------------------------------------------------------------
예시
@Aspect
public class ASPECTEXAMP{
@Around ( @Annotaion ( EXAMPLEANNO) )
public Object adviceexample ( ProceedingJoinPoint joinpoint )
{
함수 // 곁관심
joinpoint..proceed(); // 주된관심
함수 //곁관심
}
}
--------------------------------------------------------------------------------------------------------------------
이제 실행해보면 , Target 인 @EXAMPLEANNO가 있는 함수가
@Aspect 내부의 함수에서 곁관심사이에서 실행되는것을 볼 수 있다.
'Spring' 카테고리의 다른 글
ResponseEntity와 @ResponseBody의 차이점 (0) | 2020.01.21 |
---|---|
MVC 초간단 정리 (0) | 2020.01.18 |
AOP 핵심비즈니스에 붙일 어노테이션 사용해서 만들기 (0) | 2020.01.16 |
AOP란? (개념 + ProxyFactory 사용하여 설정) (0) | 2020.01.15 |
httpclient cannot be resolved to a type _ httpclientbuilder cannot be.... 에러 sts에서 자동 import안될때 (0) | 2020.01.14 |