实现原理不同:拦截器是通过 HandlerInterceptor 接口来实现的,主要是通过 afterCompletion、postHandle、preHandle 这三个方法在请求前后进行拦截处理 。动态代理主要有 JDK 动态代理和 CGLIB 动态代理,JDK 通过反射生成代理类;CGLIB 通过生成被代理类的子类来实现代理 。 加入时机不同:拦截器是在运行阶段动态加入的;动态代理是在编译期或运行期生成的代理类 。 使用难易程度不同:拦截器相对简单,通过实现接口即可使用 。动态代理稍微复杂,需要了解动态代理的实现原理,然后通过相应的 api 实现 。小结在 Spring Boot 中,拦截器和动态代理都是用来实现功能增强的 , 但二者没有任何关联关系,它的区别主要体现在使用范围、实现原理、加入时机和使用的难易程度都是不同的 。
推荐阅读
-
-
-
北晚新视觉网|洛杉矶骚乱533人被警方逮捕,美国示威活动蔓延多地
-
莫少聪|曝莫少聪看不上洪欣3个原因:曾比刘德华咖位高,前程好,婚恋魅力大
-
马斯克在德州招人开发人脑植入设备 2020电动汽车行业现状及发展前景趋势分析研究报告
-
大空头国际视野|10年期国债收益率的最新上涨再次引发了通货再膨胀预期
-
翔哥文史|曹丕称帝后,没有杀死汉献帝,曹丕不怕汉献帝造反吗?,原创
-
网易娱乐|郑恺发道歉声明承认火锅店抄袭:已将该部分撤下
-
年华不复|对职场女性来说,苛求完美暴露了你什么?做一个取悦者是好的吗?
-
[白血病]“空中对话”来袭,透过临床实践看再生障碍性贫血的诊疗
-
周到|“早餐工程”流动餐车来了 各路餐车争“鲜”亮相
-
-
-
-
-
-
-
鹰之翼|下场吃了东西后立即返场演讲,令人尊敬!叙利亚总统突感昏厥
-
-
|?65岁元彪消瘦现身,坐露天咖啡店抽雪茄,面部崎岖皮肤松弛显老态!