web过滤器与监听器

1.
*Filter根据字面上的意思就是过滤器。
*它具有以下特点:
* 声明式的:通过配置来决定是否启用
模块化的:是一个普通的Java类
可移植的:稍加更改,便能实现重用
透明的:对客户端而言,就好像不存在一样。

2.
实现javax.servlet.Filter接口。
实现接口中的三个方法:
init( FilterConfig filterConfig)throws ServletException

   当servlet容器创建该filter实例的时候调用该方法进行初始化设置。

doFilter( ServletRequest request, ServletResponse response, FilterChain chain)throws java.io.IOException, ServletException

   当客户端请求服务资源或是回复的时候调用该方法进行filter功能处理。

destroy ()

   当服务不在使用该filter功能的时候被web容器调用,此后的web请求将不在进行doFilter中的处理。


3.Filter示例

public class Encoder implements Filter {

public void init(FilterConfig config) throws ServletException {
System.out.println("过滤器初始化");
}

public void doFilter(ServletRequest req, ServletResponse resp,
FilterChain chain) throws IOException, ServletException {
//在执行过滤时,测试输出。
System.out.println("测试执行。。");
chain.doFilter(req,resp);//进入下一过滤链或Servlet
}

public void destroy() {
System.out.println("过滤器被销毁");
}


3.Filter的配置

<filter>

  <filter-name>code</filter-name>

  <filter-class>tools.Encoder</filter-class>

</filter>

<filter-mapping>

  <filter-name>code</filter-name>

  <url-pattern>/*</url-pattern>

</filter-mapping>


4.过滤器的生命周期

* 和Servlet一样,过滤器的生命周期分为四个阶段。
实例化,实现javax.servlet.Filter接口。
读取过滤器的初始化函数,调用init()方法。
* 完成对请求或过滤的响应,调用doFilter()方法。
* 销毁过滤器,调用destroy()方法。

5.监听器的分类
ServletContext监听web上下文信息。
HttpSession监听Servelt的会话信息。
ServletRequest监听Servlet的请求信息

6.Servlet上下文监听 
在Web应用中可以通过创建监听程序来监听ServletContext上下文状态。
ServletContext下文监听主要由:
ServletContextListener接口监听下文对象状态
ServletContextAttributeListener接口监听上下文对象中属性操作。

7.
*什么是过滤器,过滤器的应用?
*过滤器的编写、配置步骤

*什么是监听器,监听器的用途?

*监听器的编写、配置步骤














评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值