Tomcat和weblogic中文乱码问题解决方案.docx
《Tomcat和weblogic中文乱码问题解决方案.docx》由会员分享,可在线阅读,更多相关《Tomcat和weblogic中文乱码问题解决方案.docx(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Tomcat和weblogic中文乱码问题解决方案乱码的根本原因是编码和解码的不一致,所以只要把它们置成一样的就可以了。解决乱码最好的方法是增加过滤器。关键代码只有三行:response.setCharacterEncoding(UTF-8);response.setContentType(text/html;charset=UTF-8); request.setCharacterEncoding(UTF-8);使用tomcat服务器可以用一下过滤器先添加一个java类package com;import java.io.IOException;import javax.servlet.Fil
2、ter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletRequestWrapper;public class TomcatFo
3、rmFilter implements Filter class Request extends HttpServletRequestWrapperpublic Request(HttpServletRequest request) super(request);/* 转换由表单读取的数据的内码.* 从 ISO 字符转到 GBK.*/public String toChi(String input) try /byte bytes = input.getBytes(ISO8859-1);/return new String(bytes, GBK);byte bytes = input.getB
4、ytes(ISO8859-1);return new String(bytes, GBK);catch (Exception ex) return null;/* Return the HttpServletRequest holded by this object.*/private HttpServletRequest getHttpServletRequest()return (HttpServletRequest)super.getRequest();/* 读取参数 - 修正了中文问题.*/public String getParameter(String name)returntoC
5、hi(getHttpServletRequest().getParameter(name);/* 读取参数列表 - 修正了中文问题.*/public String getParameterValues(String name)String values =getHttpServletRequest().getParameterValues(name);if (values != null) for (int i = 0; i values.length; i+) valuesi = toChi(valuesi);return values;public void destroy() publi
6、c void doFilter(ServletRequest request, ServletResponseresponse,FilterChain chain) throws IOException, ServletException HttpServletRequest httpreq = (HttpServletRequest)request;if(httpreq.getMethod().equals(POST) request.setCharacterEncoding(GBK); else request = new Request(httpreq);chain.doFilter(r
7、equest, response);public void init(FilterConfig filterConfig) throwsServletException 再在web.xml中注册这个过滤器,注意红色字体为添加的部分web-app xmlns= xmlns:xsi=http:/www.w3.org/2001/XMLSchema-instance version=2.4 xsi:schemaLocation= action org.apache.struts.action.ActionServlet config /WEB-INF/struts-config.xml debug 3
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Tomcat weblogic 中文 乱码 问题解决 方案
限制150内