啥时AOP,其实是英文Aspect Oriented Programming的简写,意思是面向切面编程。
那啥是面向切面编程呢,举个例子,现实社会中你管理的公司有很多车辆,有大货车、有商务车、有叉车、还有垃圾车。
现在有个任务来了,车辆在出发前,必须得登记,那么应该怎么做。
是让每辆车出发前司机去登记么?要是无人车咋办?
那肯定是在车出发前,安排门卫登记,或者装个车牌识别,自动登记了。
看到没,此时车出发就是一个切面,我们精准的发现既然车都要出门,那每个车出门登记的逻辑都是一样的,所以可以按一个规则处理。
也就是说,不是在每个车出门的方法里面写登记的代码,而是指定车出门的时候执行登记。
这就是面向切面编程,也就是AOP。
Spring世界中,依赖注入和AOP是最重要的组成部分,如果硬要说谁更重要的话,我觉得还是依赖注入,为啥捏,因为Spring程序确实可以不使用AOP,但是不使用依赖注入的Spring程序你见过?
说几个常见的AOP使用场景:
可见AOP就是制定一个规则,然后在符合规则的地方插入我们指定的代码逻辑。指定的规则就是所谓的切面,所以叫面向切面编程。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2548/viewspace-2824869/ ,如需转载,请注明出处,否则将追究法律责任。