实现原理不同:拦截器是通过 HandlerInterceptor 接口来实现的,主要是通过 afterCompletion、postHandle、preHandle 这三个方法在请求前后进行拦截处理 。动态代理主要有 JDK 动态代理和 CGLIB 动态代理,JDK 通过反射生成代理类;CGLIB 通过生成被代理类的子类来实现代理 。 加入时机不同:拦截器是在运行阶段动态加入的;动态代理是在编译期或运行期生成的代理类 。 使用难易程度不同:拦截器相对简单,通过实现接口即可使用 。动态代理稍微复杂,需要了解动态代理的实现原理,然后通过相应的 api 实现 。小结在 Spring Boot 中,拦截器和动态代理都是用来实现功能增强的 , 但二者没有任何关联关系,它的区别主要体现在使用范围、实现原理、加入时机和使用的难易程度都是不同的 。
推荐阅读
-
【机组】雷神山!火神山!大别山发电马力全开,双机齐发直供武汉
-
-
-
#杭州#男方一家人空手来相亲,还不给做这件事,姑娘很疑惑
-
003航母|2021年军迷福利年,除了003航母下水、海四代首飞,还有这些!
-
女孩网恋被“老公”下套帮忙理财 却因此损失了二十万
-
上观新闻|是恒大、上港如愿会师,还是国安、苏宁爆冷突围?,观察:中超争冠“半决赛”
-
[父母]为了孩子,这波来自父母的「彩虹屁」必须收藏!
-
韩娱没有圈自建IP+流量开闸,快手音乐助力原创音乐发光
-
漫漫笑可是我不想去见鬼嘛,幽默笑话:爸爸心烦说让我见鬼去
-
-
-
-
『课程』南方+云学校即将开课!“粤课堂”名师课表首次公布
-
生产时,遇上“逗比”医生是什么体验?产妇:仿佛在听相声的现场
-
-
罗斯|不管你信不信!NBA这5个最年轻纪录,不是难破,而是根本破不了
-
决定书|市场监管总局:对瑞幸咖啡(中国)处以200万元罚款
-
-
天气寒冷吃火锅,推荐这个羊蝎子锅,汤鲜营养味美,教你家常做法