这篇文章主要介绍了Java web自定义filter代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
filter顾名思义,过滤器的意思,在javaweb中的Struts就利用了这种机制去实现视图和业务分离。
这里来配置下自己的Filter来理解下Struts的内在。
在web.xml 中添加下面:
myfiltersun.fifter.MyFiftermyfilter*
这里意思是只要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
控制台就会输出;