springmvc之环绕通过(最简单的用法,配置)

1. service类

package com.ssm.blog.aop;

public interface AopService {
	public void sayAround(String param); 
}

2. serviceImpl类

package com.ssm.blog.aop;

public class AopServiceImpl implements AopService{

	public void sayAround(String param) {
		System.out.println("============around param:" + param);
	}

}

3. aop环绕通知类

package com.ssm.blog.aop;

import org.aspectj.lang.ProceedingJoinPoint;

public class StringAop{

	public Object aroundAdvice(ProceedingJoinPoint pjp) throws Throwable {
	    System.out.println("===========around before advice");
	    Object[] obj = pjp.getArgs() ;
	    Object retVal = null ;
	    for(int i=0;i<obj.length;++i){
	    	System.out.println(i+"---->"+obj[i]);
	    	if(obj[i].equals("haha")){
	    		retVal = pjp.proceed(new Object[] {"replace12312321"});
	    	}
	    }
	    //Object retVal = pjp.proceed(new Object[] {"replace"});
	    System.out.println("===========around after advice");
	    return retVal ;
	}
 
}


4. 在配置文件中进行配置

<bean id="aspectSupportBean" class="com.ssm.blog.aop.StringAop"/>
	<bean id="aopService" class="com.ssm.blog.aop.AopServiceImpl"/>		
		
	<aop:config>	
		<aop:aspect ref="aspectSupportBean">  
	 		<aop:around pointcut="execution(* com.ssm..*.sayAround(..))" method="aroundAdvice"/>  
	 	</aop:aspect>
	</aop:config>

5. Junit测试

public class TestAop {

	@Test  
	public void testSchemaAroundAdvice() {  
	    System.out.println("======================================");  
	    ApplicationContext ctx = new ClassPathXmlApplicationContext("aop.xml");  
	    AopService aopService =  ctx.getBean("aopService", AopService.class);  
	    aopService.sayAround("haha");  
	    System.out.println("======================================");  
	}  
}



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值