只供参考:无需评论。spring2.0 1,定义自己的业务类。 接口:
public interface Test {
public void addMetgod();
} 实现: public class Testimpl implements Test {
public void addMetgod() { System.out.println("---addMethod方法的实现-----");
}
} 2,定义切面,也就是验证方法: 接口:
public interface MySecurityManager { public void security();
} 实现:
public class MySecurityManagerImpl implements MySecurityManager {
public void security() { System.out.println("-----调用security方法-------"); } }
3配置:applicationContext-aop.xml <?xml version="1.0" encoding="utf-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd" default-autowire="byName" default-lazy-init="true"><aop:aspectj-autoproxy/> <bean id = "mySecurityManager" class = "<包名>.impl.MySecurityManagerImpl" ></bean > <aop:config> <aop:aspect ref="mySecurityManager"> <aop:before pointcut-ref="needse" method="security"/> <aop:pointcut id="needse" expression="execution(* "<包名>.Test.add*(..))"/> </aop:aspect> </aop:config> <bean id = "test" class = ""<包名>.impl.Testimpl" ></bean > </beans> 4,测试:
public class TestAop {
private static Test test; static { ApplicationContext conn = new ClassPathXmlApplicationContext( new String[] { "classpath:aop-applicationContext-aop.xml" }); test = (Test) conn.getBean("test"); } public static void main(String[] args) { test.addMetgod(); } }
结果: -----调用security方法------- ---addMethod方法的实现----- end。。。
