AOP中的术语:
Aspect方面: 一个关注点的模块化,这个关注点实现可能 另外横切多个对象。事务管理是J2EE应用中横切关注点中一个很好的例子。方面用Spring的 Advisor或拦截器实现。
Joinpoint连接点: 程序执行过程中明确的点,如方法的调 用或特定的异常被抛出。
Advice通知: 在特定的连接点AOP框架执行的动作。各种类 型的通知包括“around”、“before”和“throws”通知。通知类型将在下面讨论。许多AOP框架 包括Spring都是以拦截器做通知模型,维护一个“围绕”连接点的拦截器 链。
Pointcut切入点: 指定一个通知将被引发的一系列连接点 的集合。AOP框架必须允许开发者指定切入点:例如,使用正则表达式。
Introduction引入: 添加方法或字段到通知化类。 Spring允许引入新的接口到通知化对象。例如,你可以使用一个引入使任何对象实现 IsModified接口,来简化缓存。
Target object目标对象: 包含连接点的对象。也被用来 引用通知化或代理化对象。
AOP proxy AOP代理: AOP框架创建的对象,包含通知。 在Spring中,AOP代理可以是JDK动态代理或者CGLIB代理。
Weaving织入: 组装方面创建通知化对象。这可以在编译时 完成(例如使用AspectJ编译器),也可以在运行时完成。Spring和其他纯Java AOP框架一样, 运行时完成织入。
各种通知类型包括:
Around通知: 包围一个连接点的通知,如方法调用。这是最 强大的通知。Aroud通知在方法调用前后完成自定义的行为。它们负责选择继续执行连接点或直接 返回它们自己的返回值或抛出异常来短路执行。
Before通知: 在一个连接点之前执行的通知,但这个通知 不能阻止流程继续执行到连接点(除非它抛出一个异常)。
Throws通知: 在方法抛出异常时执行的通知。Spring提供 强类型的Trows通知,因此你可以书写代码捕获感兴趣的异常(和它的子类),不需要从Throwable 或Exception转型。
After returning通知: 在连接点正常完成后执行的通知, 例如,如果一个方法正常返回,没有抛出异常。
spring中的aop术语
最新推荐文章于 2023-05-12 03:55:41 发布