一、前言
AOP
被称作面向切面编程,OOP
面向对象编程,其实由于OOP
的一些局限性,AOP
是对OOP
的一种补充,是两种编程模式,Spring AOP
是基于 AOP
编程模式的一个框架,它的使用有效减少了系统间的重复代码,达到了模块间的松耦合目的。使用AOP技术,可以将一些系统性相关的编程工作,独立提取出来,独立实现,然后通过切面切入进系统。从而避免了在业务逻辑的代码中混入很多的系统相关的逻辑——比如权限管理,事物管理,日志记录等等。这些系统性的编程工作都可以独立编码实现,然后通过AOP技术切入进系统即可。从而达到了 将不同的关注点分离出来的效果。
二、白话理解AOP
对于一些理解都停留在术语上,晦涩难懂,下面借鉴网上大佬的一篇文章用白话解释下什么是AOP切面编程
1. AOP切面编程
,就是在你项目原有的功能基础上,通过AOP
去添加新的功能,这些功能是建立在原有功能的基础上的,而且原有的功能并不知道你已