AspectJ를 이용한 예제1(before after사용)
:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
1. 이클립스에서 자바프로젝트 생성 (AOP라는 이름으로)
2. HelloAop.java 파일을 만든다.
이 클래스의 sayHello 메소드를 호출 하기 전, 후에 충고를 삽입한다.
[HelloAop.java]
package src;
public class HelloAop {
public static void main(String[] args) {
new HelloAop().sayHello("JCLEE");
}
private void sayHello(String msg) {
System.out.println("Hi~ " + msg);
}
}
3. AOP라는 프로젝트에서 마우스 우측버튼 클릭 à aspect Tools à Convert To AsperctJ Project… 선택
이전 모양
프로젝트를 우클릭하고 나오는 메뉴에서 맨 끝에서 하나위를 보면 AspectJ Tools가 있습니다. 여기서 Convert To AsperctJ Project를 클릭합니다. 그럼 프로젝트가 다음과 같이 바뀝니다.
4. Aspect 작성… ( 마우스우측버튼 à New à Aspect 선택)
[HelloMessage.]
package src;
public aspect HelloMessage {
pointcut helloCall() : call (* HelloAop.sayHello(..));
/**
* sayHello가 Call되기전에 실행
*/
before(): helloCall() {
System.out.println("Welcome~~~");
}
/**
* sayHello가 Call된 후전에 실행
*/
after() : helloCall() {
System.out.println("Good Bye~~~");
}
}
5. 실행 (HelloAop에서 마우스 우측 버튼 à Run as à AspectJ/Java Application 선택)
6. 결과 확인
[실행결과]
Welcome~~~
Hi~ JCLEE
Good Bye~~~
| 12-27 | 2250 | |||
| 12-11 | 1617 | |||
| 53 | 03-15 | 1411 | ||
| 52 | 01-31 | 1530 | ||
| 51 | 01-31 | 1768 | ||
| 50 | 01-31 | 1219 | ||
| 49 | 01-19 | 1512 | ||
| 48 | 01-11 | 1343 | ||
| 47 | 01-03 | 1879 | ||
| 46 | 12-27 | 2250 | ||
| 45 | 12-19 | 1617 | ||
| 44 | 12-14 | 1588 | ||
| 43 | 12-11 | 1617 | ||
| 42 | 12-09 | 1291 | ||
| 41 | 12-01 | 1511 | ||
| 40 | 12-01 | 1693 | ||
| 39 | 12-01 | 1162 | ||
댓글 없음:
댓글 쓰기