SpringMVC前言: SpringMVC的最后两个博客,或者今天给大家带来的是过滤器和拦截器的区别。
过滤器和拦截器角色过滤器: **概述:在过滤器范围内处理您的请求和响应。 例如,过度非法的url和登录请求必须在login.do中才能释放。 **
拦截器:概述:拦截器是基于SpringAOP实现的,就是简单的动态代理实现,拦截器会在你执行的方法前后做处理,可以做一些简单的逻辑处理,或者异常处理
两者的执行原理滤波器示例:
假设你是店长。 向助手(过滤器)告知白衬衫不准入,而不是温暖的豆芽,助手会在门口根据你的需求,非法闯入不是温暖的豆芽的白衬衫。 布洛克举个例子:
你是面包店的rzdjb。 教徒弟,做面包前的固定步骤和做面包后的固定步骤,往往对应于这个面包店(面包圈的范围)做所有面包的前后。 可以将此规则理解为两个拦截者的区别过滤器:
可以依赖于servlet来匹配所有全局请求。 过滤器在执行前添加门,只调用一次拦截器。
依赖于java反射机制,仅用于SpringMVC,只能处理action的请求。 拦截器可以在action循环中多次调用,而不是过滤器。 要点: -拦截器可以获取Springioc容器中的bean,并在处理过程中获取bean 老规矩上流程图!
过滤器:
拦截器