Topic: tomcat url传递中文参数部分乱码问题(UTF8相关) |
Print this page |
1.tomcat url传递中文参数部分乱码问题(UTF8相关) | Copy to clipboard |
Posted by: alexlex Posted on: 2005-01-03 17:12 tomcat5.0.28 繁体win2000 已经修改server.xml中 URIEncoding="UTF-8" 页面里面 <%@ page language="java" pageEncoding="utf8"%> <%@ page contentType="text/html; charset=utf8"%> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 都设置为utf8 url内传递中文字,部分字可以显示,部分不能,例如a.jsp?x=中文,结果只有“中”显示正确,“文”为乱码 如果全部改为big5编码,那么绝大部分字可以正确显示,但是少部分字,如"氹"就不能显示了。 希望有大虾可以为我解惑 事实上如果全部改为big5编码的话,就基本不会有乱码了,我希望可以使用utf8编码,那样的话无论任何编码都可以使用 |
2.Re:tomcat url传递中文参数部分乱码问题(UTF8相关) [Re: alexlex] | Copy to clipboard |
Posted by: ?笮?闵?讣 Posted on: 2005-01-04 02:41 你把这句:<%@ page contentType="text/html; charset=utf8"%> 改成:<%@ page contentType="text/html; charset=gb2312"%> 再加一句<%request.setCharacterEncoding("gb2312");%> 其实你要是用tomcat5的话,应该不会出现这个问题,版本低的话就会出现这个问题,是因为TOMCAT的编码和浏览器的编码不一样引起的 |
3.Re:tomcat url传递中文参数部分乱码问题(UTF8相关) [Re: alexlex] | Copy to clipboard |
Posted by: 雪儿飘飘 Posted on: 2005-01-04 09:19 你也可以直接在tomcat中配置,如在conf/server.xml中,找到 <Connector port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="ISO-8859-1" /> 在最后一行加上 URIEncoding="ISO-8859-1" 如果是tomcat5的话,还要考虑get或post的问题。 如果是用GET的方式的话,用类似于下面的方法解决 String name = new String((request.getParameter("name")).getBytes("ISO-8859-1","Big5"); 如果是用POST方式的话,用传统的方法解决 request.setCharacterEncoding("Big5"); |
4.Re:tomcat url传递中文参数部分乱码问题(UTF8相关) [Re: ?笮?闵?讣] | Copy to clipboard |
Posted by: alexlex Posted on: 2005-01-04 16:24 ?笮?闵?讣 wrote: thank u very much, but ~.~ |
5.Re:tomcat url传递中文参数部分乱码问题(UTF8相关) [Re: 雪儿飘飘] | Copy to clipboard |
Posted by: alexlex Posted on: 2005-01-04 16:25 雪儿飘飘 wrote: 如果用big5的话,根本不必new string之类,直接就URIEncoding="big5" ,而且还能使用${param.name} |
6.Re:tomcat url传递中文参数部分乱码问题(UTF8相关) [Re: alexlex] | Copy to clipboard |
Posted by: YuLimin Posted on: 2005-01-28 23:00 一、Tomcat本身的Get与Post中文处理方法 http://www.javaworld.com.tw/jute/post/view?bid=9&id=44042&sty=1&tpg=1&age=0 1、从webapps\jsp-examples\WEB-INF\classes\下拷贝filters目录到worklist的classes目录下 2、设置Tomcat的Server.xml配置文件在<Connector中增加URIEncoding="GBK"成如下 <Connector port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="GBK"/> 3、在应用程序的配置文件web.xml中<web-app>增加 <filter> <filter-name>Set Character Encoding</filter-name> <filter-class>filters.SetCharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>GBK</param-value> </init-param> </filter> <filter-mapping> <filter-name>Set Character Encoding</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |