AOP概述
AOP又叫面向切面编程
AOP是软件开发思想的一个飞跃,AOP的引入有效弥补OOP的不足。AOP和OOP分别从纵向和横向对软件进行抽象,有效的消除了重复代码,使代码更加的优雅。
AOP思想的理解
我们正常的程序,就像一条线。比如会先接受账号密码,再传给web,在连接数据库,等等。
而在正常执行时,切一刀,加入控制,对于本身正在执行的方法是不知道的,这就是面向切面编程。
如下图所示:
在编写代码时,你就可以以正常的业务逻辑编写,而不用在写的时候,关注除业务逻辑之外的东西。
它会带来代码简单,专注业务,好加好去等优点。
例如,在权限、日志、效率检查、审查、事务等方面,都十分适合。
filter ,intercepter等也是面向切面思想的体现。