社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
戴着假发的程序员出品 抖音ID:戴着假发的程序员 欢迎关注
spring应用手册(第四部分)
案例:
我们继续让业务方法抛出异常中断程序:
/**
* @author 戴着假发的程序员
* @company http://www.boxuewa.com
* @description
*/
public class MessageBean {
//输出信息的业务方法
public String printMessage(String msg){
System.out.println("MessageBean-printMessage:"+msg);
String str = null;
str.trim();//抛出空指针异常
return msg;
}
}
在Aspect类中添加一个最终通知处理方法:
/**
* @author 戴着假发的程序员
* @company http://www.boxuewa.com
* @description
*/
public class DkAspect {
/**
* 最终通知
*/
public void after(JoinPoint joinPoint){
System.out.println("最终通知。。。。。");
}
}
在aop:config中添加最终通知的配置:
<!-- AOP配置 -->
<aop:config>
<!-- 申明AspectBean,引用我们注册的dkAspect -->
<aop:aspect id="aspect" ref="dkAspcet">
<!-- 声明一个切入点,命名为pointcut1 -->
<!-- xml中不能使用 && ,逻辑与要使用and,-->
<!-- 如果我们的before增强方法中传入了参数msg,我就要使用args(msg)限定切入点 -->
<aop:pointcut id="pointcut1"
expression="execution(* com.st.beans..*.*(..))"/>
<!-- 最终通知 -->
<aop:after method="after" pointcut-ref="pointcut1"/>
</aop:aspect>
</aop:config>
执行业务方法测试:
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!