首先,要求JDK版本為5以上,且需要導入以下9個包:
1.asm-2.2.3.jar
2.asm-commons-2.2.3.jar
3.asm-util-2.2.3.jar
4.aspectjrt.jar
5.aspectjweaver.jar
6.log4j-1.2.14.jar
7.commons-logging.jar
8.cglib-nodep-2.1_3.jar
9.spring.jar
還是以前面的HelloSpeaker為例子:
package org.hvp.aspect;

public class HelloSpeaker {
public void hello(String name) {
System.out.print("Hi," + name);
}
}
使用@AspectJ
package org.hvp.aspect;

import org.aspectj.lang.annotation.After;
import org.aspectj.lang.annotation.Aspect;
import org.springframework.aop.aspectj.annotation.AspectJProxyFactory;

@Aspect
public class HelloSpeakerProxy {
@After("execution(* hello(..))")
public void welcome() {
System.out.println(", welcome to our pub.");
}

public HelloSpeaker getHelloSpeakerProxy() {
AspectJProxyFactory factory = new AspectJProxyFactory();
factory.setTarget(new HelloSpeaker());
factory.addAspect(HelloSpeakerProxy.class);
return factory.getProxy();
}

public static void main(String[] args) {
HelloSpeakerProxy proxy = new HelloSpeakerProxy();
HelloSpeaker helloSpeaker = proxy.getHelloSpeakerProxy();
helloSpeaker.hello("Huy Vanpom");
}
}
1.asm-2.2.3.jar
2.asm-commons-2.2.3.jar
3.asm-util-2.2.3.jar
4.aspectjrt.jar
5.aspectjweaver.jar
6.log4j-1.2.14.jar
7.commons-logging.jar
8.cglib-nodep-2.1_3.jar
9.spring.jar
還是以前面的HelloSpeaker為例子:


































