实现原理不同:拦截器是通过 HandlerInterceptor 接口来实现的,主要是通过 afterCompletion、postHandle、preHandle 这三个方法在请求前后进行拦截处理 。动态代理主要有 JDK 动态代理和 CGLIB 动态代理,JDK 通过反射生成代理类;CGLIB 通过生成被代理类的子类来实现代理 。 加入时机不同:拦截器是在运行阶段动态加入的;动态代理是在编译期或运行期生成的代理类 。 使用难易程度不同:拦截器相对简单,通过实现接口即可使用 。动态代理稍微复杂,需要了解动态代理的实现原理,然后通过相应的 api 实现 。小结在 Spring Boot 中,拦截器和动态代理都是用来实现功能增强的 , 但二者没有任何关联关系,它的区别主要体现在使用范围、实现原理、加入时机和使用的难易程度都是不同的 。
推荐阅读
-
实用化妆术|化完气质都不一样了!,这样画眼线和眉毛才够完美
-
集团|天正电气明日上会:实控人套现2.6亿,供应商、经销商问题多
-
-
-
-
太平洋电脑网|12系列即将发布:这些亮点不能错过!,iPhone
-
-
-
荟荟爱搞笑他没毕业的时候就开始暗恋一个女孩,笑话:有个单身的男同事
-
56岁郑伊健发福憔悴认不出,妻子定居日本,身家数亿至今无子
-
北斗维斟小哲|外媒称傲骨离开国安 国内名记透露 艾哈离开上港顶替他的位置
-
新华网■世卫组织认同中国应对新冠肺炎疫情的战略和战术手段
-
#骏哥说说#韩剧美食DIY教程,看剧日常如何大饱口福
-
「火龙果」对身体极好的3种食物,美容养颜、滋润肌肤,早吃早健康!
-
-
「」四大家鱼之一的青鱼该如何钓,四个技巧帮你实现大鱼梦!
-
-
-
-
学过很多门乐器却并不精通其中任何一种是怎么样的体验