产业气象站|AOP的一个具体例子,Spring
新建一个Logging类:
我希望我的业务类的Java代码的方法 , 在执行前 , 执行后 , 返回方法后 , 以及抛出异常后 , 能够执行一些hook代码 。 这些hook代码就写在这个Logging类的对应方法里:
*beforeAdvice
*afterAdvice
*afterReturningAdvice
*AfterThrowingAdvice
文章图片
业务代码就是StudentBean:在这个MainApp.java里 , 调用了StudentBean的两个方法:getName和getAge.我期望Logging类里定义的四个方法 , 可以被AOP织入 。
文章图片
Beans.xml的内容要点:
(1)定义aop的命名空间:
文章图片
(2)定义一个aspect , ref属性指向loggingBean:
文章图片
pointcut:连接点 , 指定哪些切入点应该被执行 。 ID为selectAll , 结合expression表达式属性 , 说明期望logging的逻辑被织入所有advice并执行 。
(3)在com.sap.*下的所有bean的方法执行之前 , 执行loggingbean的beforeAdvice方法 。 以此类推 , 在com.sap.*下的所有bean的方法执行之后但尚未返回时 , 执行loggingbean的afterAdvice方法 。
文章图片
从调用栈观察到 , Cglib也参与了pointcut的动态织入过程 。
文章图片
【来源:汪子熙的游泳故事】
【产业气象站|AOP的一个具体例子,Spring】声明:转载此文是出于传递更多信息之目的 。 若有来源标注错误或侵犯了您的合法权益 , 请作者持权属证明与本网联系 , 我们将及时更正、删除 , 谢谢 。 邮箱地址:newmedia@xxcb.cn
推荐阅读
- 产业气象站|5G基站太耗电!三大运营商正式官宣:将智能化关闭5G基站节约电费
- 产业气象站|他从不打无准备之仗,华为联手哈工大究竟想干啥?依任总性格
- 产业气象站|G是否影响健康?,张朝阳用手机保持30厘米
- 爱集微APP|“芯”势力助推游戏产业发展,芯片成为ChinaJoy的关键词之一
- 产业气象站|电力机器人“小白”上岗巡检
- 产业气象站|苏宁智能宣布五项Biu+共享政策,从生态赋能到生态共享
- 产业气象站|点赞“中国芯里的南大智慧”!华为公司CEO任正非一行访问南京大学
- 产业气象站|花多少钱收购,微软正在谈判收购TikTok美国业务
- 产业气象站|包括王兴,马云创办支付宝的本质不是为了支付,很多人没理解
- 上观新闻|半导体产业如何发展?嘉定举办的这个论坛指明了方向