标签:监视 连接 就是 功能 代码 机制 解决 运行 tar
在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。
Spring AOP是使用纯java实现,不需要专门的编译过程和类加载,在运行期通过代理方式向目标类织入增强代码。
举个栗子:
需求1:要为某项save功能添加鉴权功能。
传统的开发模式:在相关的类添加鉴权的方法,在该功能中添加调用该方法。
需求2:客户对这个鉴权功能很满意,要求为涉及到的所有模块的save功能都加上该功能。
传统的开发模式:如果再像上面那样在具体的实现类中重复定义鉴权方法就太傻了。那就把该方法抽取到一个base类中,相关方法都继承base类,从而做到方法的重用。
引入AOP:采用横向抽取机制代替纵向继承。本质上这个横向抽取就是一个代理操作。抽取一个鉴权代理类,在代理类中增加对相关功能的鉴权操作,无需对原有的业务类进行修改。
标签:监视 连接 就是 功能 代码 机制 解决 运行 tar
原文地址:https://www.cnblogs.com/xxxuwentao/p/9592246.html