加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 移动互联 > 正文

filter、interceptor、aspect应如何选择?很多人中招

发布时间:2019-08-22 05:56:52 所属栏目:移动互联 来源:老顾聊技术
导读:前言 小伙伴们应该听说过过滤器、拦截器、切面,印象上都能够起到截断拦截的作用,在做一些业务需求时,不知道如何选择,今天老顾就来介绍一下他们之间的区别。 Filter过滤器 过滤器可以拦截到方法的请求和响应(ServletRequest request, ServletResponse r

AOP操作可以对操作进行横向的拦截,最大的优势在于他可以获取执行方法的参数,对方法进行统一的处理。常见使用日志,事务,请求参数安全验证等

阿里二面:filter、interceptor、aspect应如何选择?很多人中招

上面的代码中,我们是可以获取方法的参数的

阿里二面:filter、interceptor、aspect应如何选择?很多人中招

虽然切面aop可以拿到方法参数,但拿不到response,request对象。

总结

我们这里来总结一下过滤器、拦截器、Aspect,看看区别

阿里二面:filter、interceptor、aspect应如何选择?很多人中招

如果三者方式同时采用,那他们的执行顺序是什么呢?

filter -> interceptor -> ControllerAdvice -> aspect -> controller

返回值顺序,或异常返回顺序

controller -> aspect -> controllerAdvice -> Interceptor -> Filter

阿里二面:filter、interceptor、aspect应如何选择?很多人中招

用一个图描述一下执行顺序

阿里二面:filter、interceptor、aspect应如何选择?很多人中招

小伙伴们可以根据自身业务,和上面技术的各自特点,去选择相应的技术。今天老顾就介绍到这里,谢谢!!!

【编辑推荐】

  1. 高效程序员的7个习惯——来自一位前谷歌技术主管
  2. Gartner:2019新兴技术成熟度曲线
  3. 我活着从柬埔寨技术“魔窟”逃出来了_技术栈微信半月刊第47期
  4. 在阿里,我如何做好技术项目管理?
  5. 不完全预测:2020年将流行何种编程技术?
【责任编辑:张燕妮 TEL:(010)68476606】
点赞 0

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读