拦截器、过滤器、监听器各有什么作用

本文主要介绍了拦截器、过滤器和监听器在Web应用中的作用。拦截器主要用于Spring框架中,用于处理预处理和后处理任务,如权限验证、日志记录等。过滤器则依赖Servlet,常用于字符编码设置、URL权限控制等。监听器则是对系统级别的参数进行监听,但不直接修改。文章还讨论了它们的执行顺序和应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

拦截器、过滤器、监听器各有什么作用
这里是修真院后端小课堂,每篇分享文从

【 拦截器、过滤器、监听器各有什么作用】

大家好,我是IT修真院西安分院第4期的JAVA学员,一枚正直纯洁善良的JAVA程序员。今天给大家分享一下,拦截器、过滤器、监听器各有什么作用

一、.背景介绍

1、拦截器

  Interceptor是动态拦截Action调用的对象。它提供了一种机制可以使开发者可以定义在一个Action执行

       的前后执行的代码,也可以在一个Action执行前阻止其执行 。同时也提供了一种可以提取Action中可重用

       的部分的方式。

2、过滤器

    Filter是实现了javax.servlet.Filter接口的服务器端程序,主要的用途是过滤字符编码,做一些业务逻辑

       判断,过滤器随web应用启动而启动,只初始化一次,只有当web应用停止或重新部署才销毁

3、 监听器

    Listener是实现了javax.servlet.ServletContextListener接口的服务器端程序,

      它也是随web应用的启动而启动,只初始化了一次,随web应用的停止而销毁。

      主要作用是:做一些初始化的内容添加工作、设置一些基本的内容、比如一些参数或者

      是一些固定的对象等等。

二、知识剖析

   2.知识剖析

       拦截器的实现方法:

        主要通过两种途径,第一种是实现HandlerInterceptor接口,第二种是实现WebRequestInterceptor接口。</P>

          拦截器的使用

        项目中使用:编写实现接口的类+springMVC.xml中配拦截器只需要实现HandlerInterceptor或者WebRequestInterceptor, 重写相应的preHandle(...)、postHandle(...)和afterCompletion(...)方法即可</p>

  (1)HandlerInterceptor 接口

     在该接口中,定义了 3 个方法,分别为preHandle()、postHandle()和afterCompletion(),通过复写这 3 个方法来对用户的请求进行拦截处理

    而且在 Spring 框架中,还提供了另外一个接口和一个抽象类,实现了对HandlerInterceptor接口的功能扩展,分别为:AsyncHandlerInterceptor和HandlerInterceptorAdapter.

    在实际应用中,一般都是通过实现HandlerInterceptor接口或者继承HandlerInterceptorAdapter抽象类

1&#x
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值