实现原理不同:拦截器是通过 HandlerInterceptor 接口来实现的,主要是通过 afterCompletion、postHandle、preHandle 这三个方法在请求前后进行拦截处理 。动态代理主要有 JDK 动态代理和 CGLIB 动态代理,JDK 通过反射生成代理类;CGLIB 通过生成被代理类的子类来实现代理 。 加入时机不同:拦截器是在运行阶段动态加入的;动态代理是在编译期或运行期生成的代理类 。 使用难易程度不同:拦截器相对简单,通过实现接口即可使用 。动态代理稍微复杂,需要了解动态代理的实现原理,然后通过相应的 api 实现 。小结在 Spring Boot 中,拦截器和动态代理都是用来实现功能增强的 , 但二者没有任何关联关系,它的区别主要体现在使用范围、实现原理、加入时机和使用的难易程度都是不同的 。
推荐阅读
-
-
-
专利|三生国健科创板上市在即 核心产品或面临“专利悬崖”
-
猎云网|爱奇艺称遭美国证监会调查,股价盘后跌超15%
-
#王菲#51岁王菲近照流出:随心所欲的人生,到底有多爽?
-
现实版“香妃”?一新生儿全身散发甜甜的香味,一查发现…
-
-
-
-
王晓琮|14岁上北大的“神童”,今成哈理工最红老师:吃饭舔盘,衣着寒酸
-
数码评价Z▲为何市场表现差异很大?,一加和OPPO同时推出高端旗舰
-
韩国电视剧|近期最新上映的5部韩国电视剧,你最喜欢哪一部呢?
-
-
孙俪佟大为18年后再合作|孙俪佟大为18年后再合作 新剧《功勋之孙家栋的天路》再度联手
-
-
产业|吴晓波:中国赶上了“三班车”,疫后迎来四大产业创新
-
想天外|我从月薪3千变成了30000,还成了别人眼中的大神,因为这3个网站
-
国防时报热点|上万驻日美军生命受到威胁,去留处境空前尴尬,日本希望复工
-
三国两晋南北朝|他身为刘备手下的大将,却投降曹魏,而他的儿子却为蜀汉尽忠
-