Spring AOP simple getting started and spring AOP getting started
TestServiceinter. java
1 package com.frank.aop;2 3 public interface TestServiceinter {4 public void SayHello();5 6 }
TestServiceImp. java
1 package com.frank.aop; 2 3 public class TestServiceImp implements TestServiceinter { 4 5 private String name; 6 7 public String getName() { 8 return name; 9 }10 11 public void setName(String name) {12 this.name = name;13 }14 15 @Override16 public void SayHello() {17 // TODO Auto-generated method stub18 System.out.println(name+"hello");19 20 }21 22 }
MyMethodBeforeAdvice. java
1 package com. frank. aop; 2 3 import java. lang. reflect. method; 4 5 import org. springframework. aop. methodBeforeAdvice; 6 7 public class MyMethodBeforeAdvice implements MethodBeforeAdvice {8 9 @ Override10 public void before (Method method, Object [] args, Object target) 11 throws Throwable {12 // TODO Auto-generated method stub13 System. out. println ("logging .... "+ Method. getName (); 14 15} 16 17}
App1.java
1 package com.frank.aop; 2 3 import org.springframework.context.ApplicationContext; 4 import org.springframework.context.support.ClassPathXmlApplicationContext; 5 6 public class App1 { 7 8 public static void main(String[] args) { 9 // TODO Auto-generated method stub10 ApplicationContext ac=new ClassPathXmlApplicationContext("com/frank/aop/beans.xml");11 TestServiceinter Ts=(TestServiceinter) ac.getBean("proxyFactoryBean");12 Ts.SayHello();13 14 }15 16 }
Beans. xml
1 <? Xml version = "1.0" encoding = "UTF-8"?> 2 <beans xmlns = "http://www.springframework.org/schema/beans" 3 xmlns: xsi = "http://www.w3.org/2001/XMLSchema-instance" xmlns: p = "http://www.springframework.org/schema/p" 4 xsi: schemaLocation = "http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd"> 5 <! -- Configure the pre-notification --> 6 <bean id = "myMethodBeforeAdvice" class = "com. frank. aop. MyMethodBeforeAdvice"/> 7 <! -- Configure the proxy object --> 8 <bean id = "testServiceImp" class = "com. frank. aop. testServiceImp "> 9 <property name =" name "value =" frank "> </property> 10 </bean> 11 <! -- Configure proxy object --> 12 <bean id = "proxyFactoryBean" class = "org. springframework. aop. framework. ProxyFactoryBean"> 13 <! -- Proxy interface set --> 14 <property name = "proxyInterfaces"> 15 <list> 16 <value> com. frank. aop. testServiceinter </value> 17 </list> 18 </property> 19 <! -- Route the notification to the proxy object --> 20 <property name = "interceptorNames"> 21 <value> myMethodBeforeAdvice </value> 22 </property> 23 <! -- Configure the proxy object --> 24 <property name = "target" ref = "testServiceImp"> 25 </property> 26 </bean> 27 28 29 </beans>