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的配置

  code

  tools.Encoder

  code

  /*


4.过滤器的生命周期

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

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

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

7.
*什么是过滤器,过滤器的应用?
很好的关于过滤器的总结
*过滤器的编写、配置步骤

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

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














你可能感兴趣的:(二期面试题)