AOP术语
横切关注点:一个分布于应用中多处的功能叫做横切关注点,如日志,审计,事务等。
切面(Aspect):通知+切点,定义了在何时何处完成一项实际的功能。
通知(Advice):切面在某一时刻要完成的工作,也就是是what和when,spring一共有五种通知,分别为
- Before
- After
- After-returning
- After-throwing
- Around
切点(Pointcut):一个或多个连接点,定义了一个切面在何处执行通知。
连接点(Joinpoint):应用中能够插入切面的一个点。
织入(Weaving):将切面应用到目标对象来创建代理对象的过程。织入在对象声明周期中有三种实现方式:
- 编译期,需要特殊的编译器
- 类加载期,需要特殊的类加载器
- 运行期,通过AOP容器动态创建代理对象