Servlet学习笔记-监听器和过滤器

本文详细介绍了Servlet中的监听器和过滤器。监听器包括ServletContextListener和ServletContextAttributeListener,用于监控全局作用域对象的生命周期和共享数据变化。过滤器接口Filter则用于在HTTP请求前进行拦截,实现请求合法性检测和增强操作。文中提供了具体的开发步骤和代码实例,展示了如何限制用户对资源文件的访问。
摘要由CSDN通过智能技术生成

Listener(监听器)

介绍

一组来自Servlet规范下的接口,共有八个接口。在Tomcat存在servlet.apt.jar
监听器接口需要开发人员亲自实现。
监听器接口用于监控“作用域对象生命周期变化时刻”和“作用域对象中的共享数据的变化"。

监听器接口实现类的开发步骤

三步
a.根据监听的实际情况,选择对应监听器接口进行实现
b.重写监听器接口声明“监听事件处理方法”
c.在web.xml文件将监听器接口实现类注册到Http服务器

<listener>
	<listener-class>xxx.xxx.OneListener</listener-class>
</listener>

关于ServletContextListener接口

作用:
通过这个接口,可以合法检测全局作用域对象被初始化、销毁的时刻。

监听事件处理方法:
public void contextInitlized():全局作用域对象初始化时调用
public void contextDesory():全局作用域对象销毁时调用

代码实例:

public class OneListener implements ServletContextListener {
   
    @Override
    public void contextInitialized(ServletContextEvent sce) {
   
        System.out.println("全局作用域对象被创建");
    }

    @Override
    public void contextDestroyed(ServletContextEvent sce) {
   
        System.out.println("全局作用域对象被销毁");
    }
}

关于ServletContextAttributeListener接口

作用:
通过这个接口,可以合法检测全局作用域对象中共享数据的变化时刻。

监听事件处理方法:
public void contextAdd():全局作用域对象添加共享数据时调用
public void contextReplace():全局作用域对象更新共享数据时调用
public void contextRemove():全局作用域对象删除共享数据时调用

Filter接口(过滤器接口)

介绍

来自Servlet规范下的接口。在Tomcat存在servlet.api.jar
Filter接口实现类由开发人员亲自实现。
Filter接口在Http服务器调用资源文件之前,对Http服务器进行拦截。

作用

拦截Http服务器,帮助Http服务器检测当前请求的合法性。
拦截Http服务器,对当前请求进行增强操作。

Filter接口实现类开发步骤

三步:
a.创建一个Java类,实现Filter接口
b.重写Filter接口中doFilter()方法
c.在web.xml文件将过滤器接口实现类注册到Http服务器

<!--将过滤器文件路径交给Tomcat-->
<filter>
	<filter-name>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值