filter顧名思義,過濾器的意思,在javaweb中的Struts就利用了這種機制去實作視圖和業務分離。
這裡來配置下自己的Filter來了解下Struts的内在。
在web.xml 中添加下面:
myfilter
sun.fifter.MyFifter
myfilter
*
這裡意思是隻要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
控制台就會輸出;

相關文章