Java web自定义filter代码实例

filter顾名思义,过滤器的意思,在javaweb中的Struts就利用了这种机制去实现视图和业务分离。

这里来配置下自己的Filter来理解下Struts的内在。

在web.xml 中添加下面:

<filter>
    <filter-name>myfilter</filter-name>
    <filter-class>sun.fifter.MyFifter</filter-class>
  </filter>

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

这里意思是只要url的类型是* ,就会调 myfilter,

然后定义myfilter这个类:

package sun.fifter;

import java.io.IOException;

import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.tools.JavaCompiler;

public class MyFifter implements javax.servlet.Filter
{

  public MyFifter()
  {
    // TODO Auto-generated constructor stub
   
  }

  @Override
  public void destroy()
  {
    // TODO Auto-generated method stub
    System.out.println("destroy");
  }

  @Override
  public void doFilter(ServletRequest arg0, ServletResponse arg1,
      FilterChain arg2) throws IOException, ServletException
  {
    // TODO Auto-generated method stub
    System.out.println("doFilter");

  }

  @Override
  public void init(FilterConfig arg0) throws ServletException
  {
    // TODO Auto-generated method stub
    System.out.println("init");
  }

}

]

这样在调用的时候:http://localhost:8080/WebProject1/index.html

控制台就会输出;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持菜鸟教程(cainiaojc.com)。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#cainiaojc.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。