ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Spring #7
    Java/Spring 2023. 3. 24. 09:05
    • AspectJ Annotation
    • execution: 메소드 실행 결합점( join points)과 일치시키는데 사용된다. within: 특정 타입에 속하는 결합점을 정의한다. this: 빈 참조가 주어진 타입의 인스턴스를 갖는 결합점을 정의한다. target: 대상 객체가 주어진 타입을 갖는 결합점을 정의한다. args: 인자가 주어진 타입의 인스턴스인 결합점을 정의한다. @target: 수행중인 객체의 클래스가 주어진 타입의 어노테이션을 갖는 결합점을 정의한다. @args: 전달된 인자의 런타입 타입이 주어진 타입의 어노테이션을 갖는 결합점을 정의한다. @within: 주어진 어노테이션을 갖는 타입 내 결합점을 정의한다. @annotation: 결합점의 대상 객체가 주어진 어노테이션을 갖는 결합점을 정의한다.
    • AspectJ Pointcut 표현식
    • execution(public * (..)) : public 메소드가 포인트 컷 execution( onj.spring.aop..(..)) : onj.spring.aop 패키지의 모든 메소드가 포인트 컷 execution(* onj.spring.aop...(..)) : onj.spring.aop 패키지와 하위 패키지의 모든 메소드가 포인트 컷 execution(public void insert*(..)) : public에 리턴값, 패키지명 없고 메서드 이름은 insert로 시작, 인자값 은 0개 이상인 메서드가 포인트 컷 execution(* onj.spring.aop..()) : 리턴형 관계없고 onj.spring.aop 패키지의 모든 클래스, 인자값이 없는 모든 메서드가 포인트 컷 execution(* onj.spring.aop...(..)) : 리턴형 관계없고 onj.spring.aop 패키지 및 하위 패키지에 있는 모든 클래스, 인자값이 0개 이상인 메서드가 포인트 컷 execution(* delete*()) : 메서드 이름이 delete으로 시작하는 인자값이 1개인 메서드가 포인트 컷 execution( delete*(,)) : 메서드 이름이 delete로 시작하는 인자값이 2개인 메서드가 포인트 컷 execution(* onj*(Integer, ..)) : 메서드 이름이 onj로 시작하고 첫번째 인자값의 타입이 Integer, 1개 이상 의 매개변수를 갖는 메서드가 포인트 컷 within(onj.spring.aop.) : onj.spring.aop 패키지 내의 모든 메소드가 포인트 컷 within(onj.spring.aop..) : onj.spring.aop패키지 및 하위 패키지의 모든 메소드가 포인트 컷 bean(oraclejava*) : 이름이 oraclejava로 시작되는 모든 빈의 메소드가 포인트 컷 bean(*dataSource) || bean(*DataSource) : 빈 이름이 “dataSource” 나 “DataSource” 으로 끝나는 모 든 빈의 메소드가 포인트 컷 !bean(onjoraclejava) : onjoraclejava빈을 제외한 모든 빈의 메소드가 포인트

    'Java > Spring' 카테고리의 다른 글

    Spring #9  (0) 2023.03.28
    Spring #8  (0) 2023.03.27
    Spring #5  (0) 2023.03.22
    Spring #4  (0) 2023.03.21
    Spring #3  (0) 2023.03.20
Designed by Tistory.