Spring中的AOP

Posted bigdata-stone

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring中的AOP相关的知识,希望对你有一定的参考价值。

 一、AOP简介

1.什么是AOP?

(1)AOP的全称是Aspect-Oriented Programming,即面向切面编程,是OOP思想的一种补充,目前已经是一种比较成熟的编程方式。传统的OOP可以通过组合或者继承的方式来达到代码的重用,但是如果要实现某个功能,同样的代码会分散到各个方法中去,这样想关闭某个功能,或者想对其进行修改,就必须修改所有的相关的方法。

(2)AOP采取横向抽取机制,将分散在各个方法中的重复代码提取出来,然后在程序编译或者运行的时候,再将这些提取出来的代码应用到需要执行的地方。

技术图片

目前最流行的AOP框架有两个,分别是Spring AOP和AspectJ。Spring AOP使用纯java实现,不需要专门的编译过程和类加载器,在运行期间通过代理的方式向目标织入增强代码,AspectJ扩展了Java语言,提供了一个专门的编译器,在编译的时候提供了横向代码的织入。

2.AOP术语

(1)Aspect(切面):在实际应用过程中,切面是指封装的用于横向插入下同功能(如事务、日志等)的类,如上图中的Aspect,该类要被Spring容器识别为切面,需要在配置文件中通过配置文件进行指定。

 

 

(2)Jointpount(连接点):

 

以上是关于Spring中的AOP的主要内容,如果未能解决你的问题,请参考以下文章

spring中的aop

spring中的事务管理和aop的关系

Spring中的AOP

Spring中的AOP

Spring Spring中的AOP和属性注入

Web技术 —— Spring中的AOP