1.要实现过滤器需要实现过滤接口,并实现过滤器接口的init()、doFilter()、destory()方法。
2.需要在web.xml部署过滤器。
3.具体实现:
public class UrlFilter implements Filter{
4还可以过滤某个特定的servlet
2.需要在web.xml部署过滤器。
3.具体实现:
public class UrlFilter implements Filter{
public void destroy() {
// TODO Auto-generated method stub
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
// TODO Auto-generated method stub
HttpServletRequest req = (HttpServletRequest)request;
HttpServletResponse rsp = (HttpServletResponse)response;
String url= req.getRequestURI();
//拿到url之后就可以根据需要过滤了
//还可以在web.xml里面配置
//检查是否合法,根据需要跳转
}
public void init(FilterConfig config) throws ServletException {
// TODO Auto-generated method stub
}
}
<filter>
<filter-name>URLFilter</filter-name>
<filter-class>org.filter.URLFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>URLFilter</filter-name>
<url-pattern>/mytest/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>URLFilter</filter-name>
<url-pattern>/jsp/*</url-pattern>
</filter-mapping>
4还可以过滤某个特定的servlet
<filter-mapping>
<filter-name>URLFilter</filter-name>
<servlet-name>LoginServlet</servlet-name>
</filter-mapping>