浅谈SpringMVC的拦截器(Interceptor)和Servlet 的过滤器(Filter)的区别与联系 及SpringMVC 的配置文件

网友投稿 512 2023-05-09

浅谈SpringMVC的-(Interceptor)和Servlet 的过滤器(Filter)的区别与联系 及SpringMVC 的配置文件

浅谈SpringMVC的-(Interceptor)和Servlet 的过滤器(Filter)的区别与联系 及SpringMVC 的配置文件

1.过滤器:

依赖于servlet容器。在实现上基于函数回调,可以对几乎所有请求进行过滤,但是缺点是一个过滤器实例只能在容器初始化时调用一次。使用过滤器的目的是用来做一些过滤操作,获取我们想要获取的数据.

比如:在过滤器中修改字符编码;在过滤器中修改 HttpServletRequest的一些参数,包括:过滤低俗文字、危险字符等

关于过滤器的一些用法可以参考我写过的这些文章:

继承HttpServletRequestWrapper以实现在Filter中修改HttpServletRequest的参数:https://zifangsky-/677.html

在SpringMVC中使用过滤器(Filter)过滤容易引发XSS的危险字符:https://zifangsky-/683.html

2.-:

依赖于web框架,在SpringMVC中就是依赖于SpringMVC框架。在实现上基于java的反射机制,属于面向切面编程(AOP)的一种运用。由于-是基于web框架的调用.

因此可以使用spring的依赖注入(DI)进行一些业务操作,同时一个-实例在一个controller生命周期之内可以多次调用。但是缺点是只能对controller请求进行拦截,对其他的一些比如直接访问静态资源的请求则没办法进行拦截处理。

关于-的一些用法可以参考我写过的这些文章:

SpringMVC中使用-(interceptor)拦截CShttp://RF攻击(修):httpshttp://://zifangsky-/671.html

SpringMVC中使用Interceptor+cookie实现在一定天数之内自动登录:https://zifangsky-/700.html

3.执行顺序

过滤器的运行是依赖于servlet容器的,跟springmvc等框架并没有关系。并且多个过滤器的执行顺序跟web.xml文件中定义的先后关系有关。

-的执行顺序跟在SpringMVC的配置文件中定义的先后顺序有关。

SpringMVC的配置文件:

res

msg

errmsg

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:IntelliJ IDEA 2020安装使用教程详解
下一篇:Spring MVC 拦截器 interceptor 用法详解
相关文章

 发表评论

暂时没有评论,来抢沙发吧~