AOP为Aspect Oriented Programming的缩写,意为:面向切面编程(也叫面向方面),能够经过预编译方式和运行期动态代理实如今不修改源代码的状况下给程序动态统一添加功能的一种技术。编程
AOP是目前软件开发中的一个热点,也是Spring框架中的一个重要内容。利用AOP能够对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度下降,提升程序的可重用性,同时提升了开发的效率。安全
AOP是OOP的延续,主要的功能是:日志记录,性能统计,安全控制,事务处理,异常处理等等。框架
在Spring中提供了AOP的丰富支持,容许经过分离应用的业务逻辑与系统级服务(例如审计(auditing)和事务(transaction)管理)进行内聚性的开发。应用对象只实现它们应该作的——完成业务逻辑——仅此而已。它们并不负责(甚至是意识)其它的系统级关注点,例如日志或事务支持。 性能