A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 周发建 中级黑马   /  2016-4-1 09:46  /  637 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

(一)通过代理解决全站乱码
//通过代理解决全站乱码问题
class CharacterEncodingFilter2 implements Filter {
       
        public void doFilter(ServletRequest req, ServletResponse resp,
                        FilterChain chain) throws IOException, ServletException {
               
                final HttpServletRequest request = (HttpServletRequest) req;
                HttpServletResponse response = (HttpServletResponse) resp;
               
                request.setCharacterEncoding("UTF-8");   //post  get   request.getParameter()
               
                //servlet----> requestProxy.getCookie requestProxy.get
                chain.doFilter((ServletRequest) Proxy.newProxyInstance(CharacterEncodingFilter2.class.getClassLoader(), request.getClass().getInterfaces(), new InvocationHandler(){
                        public Object invoke(Object proxy, Method method, Object[] args)
                                        throws Throwable {
                                if(!method.getName().equals("getParameter")){
                                        return method.invoke(request, args);
                                }
                                if(!request.getMethod().equalsIgnoreCase("get")){
                                        return method.invoke(request, args);
                                }
                               
                                String value = (String) method.invoke(request, args);
                                if(value==null){
                                        return null;
                                }
                               
                               
                                return new String(value.getBytes("iso8859-1"),"UTF-8");
                        }
                       
                }), response);
        }
        public void destroy() {
        }
        public void init(FilterConfig filterConfig) throws ServletException {
        }
}

2 个回复

倒序浏览
这是哪一章节的啊??看不懂
回复 使用道具 举报
ipursue 来自手机 中级黑马 2016-4-1 12:19:06
藤椅
手机上看这个排版,是灾难
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马