chap10 - ★AOP2 @어노테이션 사용, 데이터 처리
Before Advice
[ memo.xml ]
[ Logger.java ]
[ IMemo.java ]
[ Memo.java ]
[ MainTest.java ]
After Advice
[ memo.xml ]
[ Logger.java ]
[ MainTest.java ]
[ IMemo.java ]
[ Memo.java ]
[ Logger.java ]
[ memo.xml ]
[ MainTest.java ]
[ IMemo.java ]
[ Memo.java ]
[ Logger.java ]
[ memo.xml ]
[ MainTest.java ]
==================================================================
AOPConsoleTest 프로젝트와 설정부분은 모두 동일하다.
차이점은 xml을 사용하지 않고 @ 어노테이션을 사용할것이다.
[ pom.xml ]
AOPConsoleTest 프로젝트의 pom.xml에 부분을 복사해 왔다.
[ memo.xml ]
[ IMemo.java ]
[ Memo.java ]
위에 두가지는 기존 AOPConsoleTest프로젝트와 동일하다.
[ Logger.java ]
around 메소드는 @Around 를 붙여줌으로서 Around 방식으로 사용된다.
@Around("m1()") 의 m1은 @Pointcut 에서 지정해준 대상체를 가져온것이다.
[ MainTest.java ]
기존 AOPConsoleTest프로젝트와 동일하다.
모든 결과는 기존 AOPConsoleTest프로젝트와 동일하게 나온다.
[ MainTest.java ]
==================================================================
데이터 처리
[ pom.xml ]
기존의 AOPConsoleTestAnno 프로젝트에서 필요 부분을 붙여 왔다.
bean 을 넣어야 하므로 xml을 만든다.
[ main.xml ]
기존의 AOPConsoleTestAnno 프로젝트에서 모두 붙여와서 변경했다.
[ ICore.java ]
[ Core.java ]
[ Cross.java ]
[ MainTest.java ]
[ Core.java ]
[ Cross.java ]
JoinPoint joinPoint 가 public void com.test.pointcut.Core.m1 Core 이므로 위에 처럼
get 이 가능한 것이다.
[ ICore.java ]
[ Core.java ]
[ Cross.java ]
[ MainTest.java ]
[ Core.java ]
[ Cross.java ]
[ MainTest.java ]
After Advice
[ ICore.java ]
[ Core.java ]
[ Cross.java ]
[ MainTest.java ]
[ Core.java ]
[ Cross.java ]
여기서 하나 알아 두어야 할것은 joinPoint 는 Before에서 사용되어지고
After에서는 사용되지 않는다.
AOPConsoleTestPointcut 프로젝트 참고!!!!
교수님 팔일을 가지고 온것이다.
Pointcut 에 대해 알고자 하는 것이다.