24、AspectJ编织模型详解

AspectJ编织模型详解

1. 引言

在面向切面编程(AOP)中,编写切面只是第一步,要让切面发挥作用,就需要进行编织(weaving)。编织是实现AOP的关键机制,它将类和切面组合成一个可执行的系统。AspectJ提供了多种编织模型,这些模型让AspectJ的使用比以往任何时候都更加容易。

2. 编织模型分类

可以根据编织执行的时间和处理的输入类型对AspectJ编织模型进行分类。
- 按编织时间分类
- 构建时编织(Build-time weaving) :在应用程序部署之前的构建过程中,将类和切面编织在一起。
- 加载时编织(Load-time weaving,LTW) :在虚拟机加载类时即时进行编织,无需在部署前进行编织。
- 按输入类型分类
- 源代码编织(Source code weaving) :接受源代码形式的输入。
- 字节码(二进制)编织(Byte-code (binary) weaving) :接受编译器生成的字节码形式的输入。

下面的表格展示了AspectJ编织器支持的编织可能性:
| 编织时间 | 源代码 | 字节码(二进制) |
| ---- | ---- | ---- |
| 构建时 | 是 | 是 |
| 加载时 | 仅支持使用XML语法的源代码 | 是 |

AspectJ

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值