过滤器和拦截器 - 对web请求的影响

本文介绍了Filter过滤器和Interceptor拦截器在Web请求中的作用。Filter是Servlet规范的一部分,先于Interceptor执行,常用于登录验证、字符编码转换等。Interceptor则属于Spring MVC,用于拦截URL,具有preHandle、postHandle和afterCompletion三个关键方法,适用于权限检查和请求计时等场景。
摘要由CSDN通过智能技术生成

过滤器优先于拦截器,过滤功能定义你希望执行的内容,拦截功能定义你想干预或者想中止的内容。

 

Filter过滤器

Filter是servlet规范定义的,不属于spring框架,拦截请求数据,相比较拦截器更粗粒。Filter有FilterChain概念,一个FilterChain包含多个Filter,在客户端请求request到达servlet之前会经过Filter,过滤通过后才会进行后续操作,同样在操作完成返回给客户端时,也会经过Filter过滤。

1. Filter实现

过滤器实现Filter接口,实现init(),doFilter(),destroy()方法

  • Init(),web程序加载时执行,例如Tomcat服务启动时调用
  • doFilter(),每次客户端发起请求时均会调用
  • destory(),web程序卸载时执行,一般用于容器释放

使用场景:

  • 例如过滤请求资源走登录验证等,过滤非法请求
  • 字符编码转换等
  • 详细记录某些特殊的用户请求操作日志

Interceptor拦截器

1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值