Spring AOP创建AroundAdvice实例

2019-08-16 09:53:34来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

Spring AOP创建AroundAdvice实例

     AroundAdvice

        1、在方法之前和之后来执行相应的操作

        2、实现MethodInterceptor接口

 

接口文件:

 

public interface IHello {
   public void sayHello(String str);
}
public class Hello implements IHello {
    @Override
    public void sayHello(String str) {
    	System.out.println("你好"+str);
    }
}

 

  SayAroundAdvice文件:

public class SayAroundAdvice implements MethodInterceptor {

	@Override
	public Object invoke(MethodInvocation arg0) throws Throwable {
		// TODO Auto-generated method stub
		Object result=null;
		
		System.out.println("Around在方法执行前做事情!");
		
		result=arg0.proceed();
		
		System.out.println("Around在方法执行后做事情!");
		
		return result;
	}

}

  Main文件:

public class MainTest {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
	    ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");
	    
	    IHello hello=(IHello)context.getBean("helloProxy");
	    hello.sayHello("访客");
	}

}

  

applicationContext.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" 
"http://www.springframework.org/dtd/spring-beans-2.0.dtd">
<beans>
    <!-- 建立目标对象实例 -->
	<bean id="bean_hello" class="com.pb.Hello" />
	<!-- 创建Around advice实例 -->
	<bean id="ssd" class="com.pb.SayAroundAdvice" />
	<!-- 建立代理对象 -->
	<bean id="helloProxy" class="org.springframework.aop.framework.ProxyFactoryBean">
	    <!-- 设置代理的接口 -->
	    <property name="proxyInterfaces">
			<value>com.pb.IHello</value>
		</property>
		<!-- 设置目标对象实例 -->
		<property name="target">
			<ref bean="bean_hello"/>
		</property>
		<!-- 设置Advice实例 -->
		<property name="interceptorNames">
			<list>
			 	 <value>ssd</value>
			</list>
		</property>
	</bean>
</beans>

  执行效果:

 


原文链接:https://www.cnblogs.com/schangxiang/p/11145462.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:JAVA基础之会话技术-Cookie及Session

下一篇:处理bugs心法