过滤器参考

来源:互联网 发布:sql合并相同行 编辑:程序博客网 时间:2024/06/03 12:51

编码过滤器:

package com.filter;import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;/** * 编码过滤器 *  *  * @author wushengxin *  */public class EncodingFilter implements Filter {    public void destroy() {        // TODO Auto-generated method stub    }    /**     * 设置request和response的编码类型为utf-8     *      *      */    public void doFilter(ServletRequest req, ServletResponse res,            FilterChain chain) throws IOException, ServletException {        req.setCharacterEncoding("UTF-8");        res.setCharacterEncoding("UTF-8");        chain.doFilter(req, res);    }    public void init(FilterConfig arg0) throws ServletException {        // TODO Auto-generated method stub    }}

struts过滤器:

package com.filter;import java.io.IOException;import javax.servlet.FilterChain;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.http.HttpServletRequest;import org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter;/** * struts过滤器 *  *  *@author wushengxin  *  */public class StrutsFilter extends StrutsPrepareAndExecuteFilter {    @Override    /**     * 判断是否为链接是否为struts     *      *     *      *      */    public void doFilter(ServletRequest req, ServletResponse res,            FilterChain chain) throws IOException, ServletException {        HttpServletRequest request = (HttpServletRequest) req;        String requestURI = request.getRequestURI();        if (requestURI.indexOf("/servlet") != -1) {            // 是一个Servlet            chain.doFilter(request, res);        }else if (requestURI.indexOf("/ueditor") != -1) {                chain.doFilter(request, res);        } else {            /**             * 调用StrutsPrepareAndExecuteFilter中的Action过滤器             */            super.doFilter(req, res, chain);        }    }}
0 0