Spring的AOP
讲述Filter(过滤器 责任链设计模式 动态代理 AOP)
可以理解为Filter是一个特殊的Servlet
面向过程编程(思想)POP Procedure
面向对象编程(思想)OOP Object
面向切面编程(思想)AOP Aspect Oriented Programming
我想去上海找朋友撸串儿,自驾游
哈尔滨 自驾 上海(撸串儿)
面向过程编程思想(关注事情步骤,事情本身)
将一件事情的整体看作是一个流程
我们更关注事情的流程、步骤
哈尔滨出发 中间的所有事情都要亲力亲为自己做
会开车 知道路线 经过每一个城市 车子加油
这样的思路很容易理解,复用不好,一个大的流程修改起来很麻烦
面向对象编程思想(关注中间有几个对象参与其中)
将原有整体事情的步骤,拆分成小段
每一个小段封装成一个单独的事情(方法)
不同的方法交给不同的人来做
哈尔滨出发 最终目标是上海
中间的几个环节我找人做就可以了
沈阳(收费站) 天津(加油) 济南(买吃的) 南京(休息) 上海(撸串儿)
每一个小目标自己连接起来,(会开车,自己规划路线)
面向切面编程思想(面向对象基础上 更关注最终目标 而不关注中间的小目标)
哈尔滨出发 找代驾 最终目标是上海
中间经过的每一个环节,其实还是原来的对象
不是我们关注的目标了,我们到达目标之前会经过的一个环节
底层是通过责任链形式连接起来的
以前什么时候用Filter,不是某一个具体的任务
好多个任务之前的一个共有环节,再具体任务之前做点事情,任务之后做点事情
事情是共有的,不是某一个具体的业务,这种情况,想到切面的思想
起始对象 哈尔滨(没有真实存在 main 项目开始)
Target Object 目标对象 上海
AOP Proxy 代理对象 代驾(Spring帮我们创建的 责任链模式)
Aspect 切面对象 好几个城市(沈阳 天津 济南 南京)
Pointcut 切入点 目标对象中的方法(撸串儿)
Join point 连接点 切面对象中的方法(加油 收费。。)
Advice 建议/通知 连接点中执行的过程(连接点方法中执行的过程,代码)
方式如下几种:
before前置建议/通知
after-returning后置建议/通知
after-throwing异常建议/通知
after最终建议/通知
around环绕建议/通知(前后建议/通知)
Spring之AOP(切面思想)
最新推荐文章于 2022-02-04 21:34:43 发布