Spring Aspectj 代理 前置 后置 以及 异常

来源:互联网 发布:江西理工大学软件学院 编辑:程序博客网 时间:2024/05/21 09:55
  1. <span style="font-size:14px;">public interface IDog2 {  
  2.     public  void  dog();  
  3.   
  4.     public  String  run();  
  5. }  
  6. public class Dog2 implements IDog2 {  
  7.     public  void  dog(){  
  8.         System.out.println("===测试顾问==1dog()");  
  9.     }  
  10.   
  11.     public String run() {  
  12.         int resul=5/0;  
  13.         System.out.println("====测试顾问===2run()");  
  14.         return "add";  
  15.     }  
  16. }  
  17. @Aspect  
  18. public class MyAspectj {  
  19.     //前置增强  
  20.     //@Before(value = "execution(* *..springAspectj.*.*(..))")  
  21.     public  void MyBefore(){  
  22.         System.out.println("====这是前置增强====");  
  23.     }  
  24.     //后置增强  
  25.    // @AfterReturning(value = "execution(* *..springAspectj.*.*(..))")  
  26.     public  void After(){  
  27.         System.out.println("====这是后置增强====");  
  28.     }  
  29.   
  30.   
  31.     //环绕增强  相对于 后置增强 可以 改变 返回值的 内容  
  32.    // @Around(value = "execution(* *..springAspectj.*.*(..))")  
  33.      public  Object  around(ProceedingJoinPoint point) throws Throwable {  
  34.         System.out.println("==环绕前===");  
  35.         Object result = point.proceed();  
  36.         System.out.println("==环绕之后===");  
  37.         if (result!=null){  
  38.             String stu=(String)result;  
  39.             return stu.toUpperCase();  
  40.         }else {  
  41.             return  null;  
  42.         }  
  43.   
  44.     }  
  45.   
  46.   
  47.     @AfterThrowing(value = "execution(* *..springAspectj.*.*(..))")  
  48.     public  void After2(){  
  49.   
  50.         System.out.println("====这是异常====");  
  51.     }  
  52. }</span>  


[java] view plain copy
  1. <span style="font-size:14px;">    //Aspectj 代理  
  2.     //测试 前置 后置 增强  
  3.     //测试 环绕增强 可以改变 返回值  
  4.     //测试 异常  
  5.     @Test  
  6.     public  void  aVoid3(){  
  7.         ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContext09Aspectj.xml");  
  8.         IDog2 dog =(IDog2) ctx.getBean("dog2");  
  9.         dog.dog();  
  10.         System.out.println();  
  11.         String run = dog.run();  
  12.         System.out.println(run);  
  13.     }  
  14. }  
  15. </span>  
阅读全文
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 租房合同没理家电清单怎么办 普雪油烟机坏了怎么办 我累了 真的累了怎么办 u盘15g变成4g了怎么办 属兔的买了东户怎么办 玩时时彩输了2万怎么办 胸变的又软又小怎么办 u盘16g变成4g了怎么办 1岁宝宝吃了就吐怎么办 脚崴了肿了很痛怎么办 九格拼图5在9那怎么办 4s锁屏密码忘了怎么办 6p触屏偶尔乱跳怎么办 新办劳务公司的劳务资质怎么办 汽车没电了打不着火怎么办 吃凉的甜的牙疼怎么办 学车对点对不上怎么办 发现老公有外遇最明智的怎么办 想开个童装店但是没经验怎么办 母乳不够吃宝宝又不喝奶粉怎么办 掉头发很厉害怎么办有什么偏方 红米2a刷死机了怎么办 公司退市我们买的股票怎么办 黑魂3把npc杀了怎么办 摔倒了膝盖摔肿了又痛怎么办 厕所堵了怎么办疏通马桶有妙招 月经不来怎么办如何让它快点来 苹果手机进水了开不了机怎么办 苹果5s进水了怎么办修要多少钱 吃了过期3年的药怎么办 离婚后孩子的抚养费不给怎么办 小车钥匙丢了怎么办配要多少钱 一键启动的车钥匙丢了怎么办 股票退市了手里的股票怎么办 3d硬金以后要换怎么办 偏指甲红肿长在了肉里怎么办 牙齿黄怎么办教你牙齿美白小窍门 2岁孩门牙磕断了怎么办 脸上用了含激素的产品应该怎么办 身上起红疙瘩水泡很痒怎么办 怀疑老公有外遇他不承认怎么办