Spring AOP
SpringAOP
AOP是面向对象编程的一种补充和完善。其提供横向的切面逻辑,将与多个对象有关的公共模块分装成一个可重用模块,并将这个模块整合成为Aspect,即切面。 切面就是对与具体的业务逻辑无关的,却是许多业务模块共同的特性或职责的一种抽象,其减少了系统中的重复代码,因此降低了模块的耦合度,更加有利于扩展。
Spring AOP相关概念
1.横切关注点
一些具有横切多个不同软件模块的行为,通过传统的软件开发方法不能够有效地实现模块化的一类特殊关注点。横切关注点可以对某些方法进行拦截,拦截后对原方法进行增强处理。
2. 切面(Aspect)
切面就是对横切关注点的抽象,这个关注点可能会横切多个对象。
3. 连接点(JoinPoint)
连接点是在程序执行过程中某个特定的点,比如某方法调用的时候或者处理异常的时候。由于Spring只支持方法类型的连接点,所以Spring AOP中一个连接点总是表示一个方法的执行。
4.切入点(Pointcut)
切入点是匹配连接点的拦截规则,在满足这个切入点的连接点上运行通知。切入点表达式如何和连接点匹配是AOP的核心,Spring默认使用AspectJ切入点语法。
5.通知(Advice)
在切面上拦截到某个特定的连接点之后执行的动作。
6. 目标对象(Target Object)
目标对象,被一个或者多个切面所童子的对象,即业务中需要进行增强的业务对象。
7.织入(Weaving)
织入是把切面作用到目标对象,然后产生一个***对象的过程
8.引入(Introduction)
引入是用来运行时给一个类声明额外的方法或属性,即不需要为类实现一个接口,就能使用接口中的方法。
老板电器公司氛围 197人发布