27、面向切面编程示例:模式与复用

面向切面编程示例:模式与复用

在软件开发中,面向切面编程(AOP)为解决横切关注点提供了强大的手段。本文将深入探讨 AOP 中的模式与复用,以持久化为例,展示如何将横切行为封装为可复用的方面,并应用到不同的场景中。

1. 调用与执行指示符的区别

在使用 AOP 时, call() execution() 指示符是常见的讨论点。它们与 within / withincode 等指示符的交互方式有所不同。
- call() 指示符 :当调用者对被调用对象进行方法调用时匹配,且在被调用方法执行之前匹配,其作用域直到方法返回或抛出异常才结束。
- execution() 指示符 :在方法开始执行时匹配,并持续到最后一条语句执行之后。如果 call() 指示符匹配成功, execution() 指示符的作用域总是在 call() 指示符的作用域之内。

2. 使用 this() target()

call() execution() 指示符与 this() target() 结合使用时,会有四种组合及可能的结果,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值