zoukankan      html  css  js  c++  java
  • Servlet程序开发-- 过滤器

    3种servlet:简单Servlet,过滤Servlet,监听Servlet

    1. 简单Servlet:是作为一种程序所必须的开发结构保存下来的。

    2. 过滤Servlet:过滤器使用的不是HttpServlet类,而是接口Filter,在javax.servlet里,此接口的主要功能是完成公共协议的,因为不在Http下。

    三个主要方法:init(), doFilter(),destroy()三个函数

    做一个过滤Servlet:

    package org.lxh.filterdemo ;
    import java.io.* ;
    import javax.servlet.* ;
    public class SimpleFilter implements Filter {
        public void init(FilterConfig config)
              throws ServletException{
            // 接收初始化的参数
            String initParam = config.getInitParameter("ref") ;    
            System.out.println("** 过滤器初始化,初始化参数=" + initParam) ;
        }
        public void doFilter(ServletRequest request,
                  ServletResponse response,
                  FilterChain chain)
                  throws IOException,
                         ServletException{
            System.out.println("** 执行doFilter()方法之前") ;
            chain.doFilter(request,response) ;
            System.out.println("** 执行doFilter()方法之后") ;
        }
        public void destroy(){
            System.out.println("** 过滤器销毁。") ;
    } }

    配置过滤Servlet注意事项:在简单Servlet之前配置:

    <filter>
            <filter-name>simple</filter-name>
            <filter-class>org.lxh.filterdemo.SimpleFilter</filter-class>
            <init-param>
                <param-name>ref</param-name>
                <param-value>HELLOMLDN</param-value>
            </init-param>
    </filter>

    <filter-mapping>
      <filter-name>simple</filter-name>
      <url-pattern>/*</url-pattern>
    </filter-mapping>

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

    表示的不是映射路径,而是一个过滤器的过滤路径,现在既然是“/*”表示对虚拟目录下的所有文件进行过滤。

    过滤器不需要任何配置和调用就可以在服务器启动的时候,自动完成初始化操作。

  • 相关阅读:
    值得品味的SQL
    C# Keycode对照表
    Web安全实践(9)攻击apache
    Web安全实践(8)攻击iis6.0
    Web安全实践(11)用户名枚举
    asp.net 动态添加JavaScript方法
    Web安全实践(12)密码探测
    Web安全实践(14)嗅探,arp欺骗,会话劫持与重放攻击(下)
    委托的异常处理
    Web安全实践(13)嗅探,arp欺骗,会话劫持与重放攻击(上)
  • 原文地址:https://www.cnblogs.com/wujixing/p/4992002.html
Copyright © 2011-2022 走看看