HttpFilter package xin.sun.controller.filter;import javax.servlet.*;import javax.servlet.FilterConfig;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;/** * * 仿照HttpSe
package xin.sun.controller.filter; import javax.servlet.*; import javax.servlet.FilterConfig; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; /** * * 仿照HttpServlert,自定义HttpFilter,简化开发, */ public abstract class HttpFilter implements Filter { private FilterConfig filterConfig; @Override public void init(FilterConfig filterConfig) throws ServletException { this.filterConfig = filterConfig; this.init(); } /** * 获取过滤器配置对象 * @return */ public FilterConfig getFilterConfig(){ return this.filterConfig; } /** * 获取初始化参数 * @param key * @return */ public String getInitParameter(String key){ return getFilterConfig().getInitParameter(key); } /** * 获取应用上下文 * @return */ public ServletContext getServletContext() { return this.getFilterConfig().getServletContext(); } /** * 提供用户初始化方法 * @throws ServletException */ public void init() throws ServletException { } /** * 重写doFilter(),把Servlert***转换为HttpServlert*** * @param servletRequest * @param servletResponse * @param filterChain * @throws IOException * @throws ServletException */ @Override public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { HttpServletRequest request; HttpServletResponse response; try { request = (HttpServletRequest)servletRequest; response = (HttpServletResponse)servletResponse; } catch (ClassCastException var6) { throw new ServletException("non-HTTP request or response"); } this.doFilter(request,response,filterChain); } /** * 提供一个doFilter()方法,用户必须实现 * @param servletRequest * @param servletResponse * @param filterChain * @throws IOException * @throws ServletException */ protect abstract void doFilter(HttpServletRequest servletRequest, HttpServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException ; @Override public void destroy() { } }