定义一个包含增强方法的javaBean(最终增强)
生活随笔
收集整理的這篇文章主要介紹了
定义一个包含增强方法的javaBean(最终增强)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?使用Schema
?
1.AroundLogger類
1 //定義一個包含增強方法的javaBean 2 public class AroundLogger{ 3 //注解方式的環繞增強處理 4 private static final Logger log = Logger.getLogger(AroundLogger.class); 5 public Object aroundLogger(ProceedingJoinPoint jp){ 6 log.info("a調用"+jp.getTarget()+"的"+jp.getSignature().getName()+"方法,方法參數是:" 7 +Arrays.toString(jp.getArgs())); 8 try { 9 Object result = jp.proceed();//調用目標方法,獲取目標方法的返回值 10 log.info("a調用"+jp.getTarget()+"的"+jp.getSignature().getName()+"方法,方法返回值是:" 11 +result); 12 return result; 13 } catch (Exception e) { 14 log.error(jp.getSignature().getName()+"方法拋出異常"+e); 15 e.printStackTrace(); 16 } catch (Throwable e) { 17 // TODO Auto-generated catch block 18 e.printStackTrace(); 19 } 20 return null; 21 } 22 }?
2.spring配置文件
1 <bean id="dao" class="com.dao.impl.IUserDaoImpl"></bean> 2 <bean id="biz" class="com.biz.impl.IUserBizImpl"> 3 <property name="dao" ref="dao"></property> 4 </bean> 5 <!-- 聲明增強方法所在的類 --> 6 <bean id="thelogger" class="com.aop.AroundLogger"></bean> 7 <!-- 配置切面 --> 8 <aop:config> 9 <!-- 定義切入點 --> 10 <aop:pointcut expression="execution(* com.biz.IUserBiz.* (..))" id="pointcut"/> 11 <!-- 引入包含增強的bean --> 12 <aop:aspect ref="thelogger"> 13 <!--將aroundLogger方法定義為最終增強并引入切入點 --> 14 <aop:around method="aroundLogger" pointcut-ref="pointcut"/> 15 </aop:aspect> 16 </aop:config>3.測試類同使用Schema配置切面
4.測試結果
?
轉載于:https://www.cnblogs.com/myhzb/p/7538450.html
總結
以上是生活随笔為你收集整理的定义一个包含增强方法的javaBean(最终增强)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: keep怎么投屏到电视上
- 下一篇: 怪物猎人世界轰龙弱点是什么属性