什么是AOP?
AOP全称是Aspect-Oriented Programming,即面向切面编程。它是面向对象编程的一种补充。
为什么使用AOP?
在传统的业务代码中,通常都会进行事务处理、日志记录等操作。如果要重用通用功能的话,最常见的是通过组合或者继承。但是,如果在整个应用中都使用相同的基类,往往会导致一个脆弱的对象体系,同样的代码仍然会分散到各个方法中。为了解决这一问题,AOP思想随之产生。在使用面向切面编程的时候,我们仍然在一个地方定义通用功能,但是可以通过声明的方式定义这个功能要以何种方式在何处应用,而无需修改受影响的类。横切关注点可以被模块化为特殊的类