标签:管理 ring 使用 java 注解 种类型 插入 poj rod
横切关注点(cross-cutting point),散布于应用中多处的功能。从概念上讲是与应用的业务逻辑分离的。把横切关注点与业务逻辑分离是面向切面编程所解决的问题。
切面帮助我们模块化横切关注点。
通知(advice),定义了切面是什么以及何时使用。Spring有5种类型的通知。
连接点(join point),在应用执行过程中能插入切面的一个点,可以是调用方法时、抛出异常时、修改一个字段时。切面代码利用这些点插入到应用的正常流程中,添加新行为。
切点(pointcut),用来匹配通知所要织入的一个点或多个连接点。通常使用类和方法名来指定这些切点。
切面(aspect),通知和切点的结合,共同定义切面的全部内容,是什么,在何时和何处完成功能。
引入(introduction),允许我们向现有类添加新方法和属性。
织入(weaving),把切面应用到目标对象并创建新的代理对象的过程。切面在指定的连接点被织入目标对象中,在声明周期里有多个点可以织入:
Spring对AOP的支持
Spring提供了4中类型的AOP支持:
Spring所创建的通知都是用标准的Java类编写的。
Spring在运行期把切面织入到Spring管理的bean中
因为Spring基于动态代理,所以Spring只支持方法连接点。
通过切点来选择连接点
在SpringAOP中,使用AspectJ的切点表达式语言来定义切点。
标签:管理 ring 使用 java 注解 种类型 插入 poj rod
原文地址:https://www.cnblogs.com/minguo/p/10994322.html