spring AOP 简单入门案例

王朝学院·作者佚名  2016-05-28
窄屏简体版  字體: 小  |  中  |  大  |  超大  

sPRing AOP 简单入门案例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("记录日志中。。。。"+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 <!-- 配置前置通知 --> 6 <bean id="myMethodBeforeAdvice" class="com.frank.aop.MyMethodBeforeAdvice" /> 7 <!-- 配置被代理对象 --> 8 <bean id="testServiceImp" class="com.frank.aop.TestServiceImp"> 9 <property name="name" value="frank"></property>10 </bean>11 <!-- 配置代理对象 -->12 <bean id="proxyFactoryBean" class="org.springframework.aop.framework.ProxyFactoryBean">13 <!--代理接口集 -->14 <property name="proxyInterfaces">15 <list>16 <value>com.frank.aop.TestServiceinter</value>17 </list>18 </property>19 <!-- 把通知织入到代理对象 -->20 <property name="interceptorNames">21 <value>myMethodBeforeAdvice</value>22 </property>23 <!-- 配置被代理对象 -->24 <property name="target" ref="testServiceImp">25 </property>26 </bean>27 28 29 </beans>

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航