java Struts2 url 传参 中文乱码
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java Struts2 url 传参 中文乱码相关的知识,希望对你有一定的参考价值。
1、在JS里对中文参数进行两次转码var
login_name
=
document.getElementById("loginname").value;
login_name
=
encodeURI(login_name);
login_name
=
encodeURI(login_name);
//一样的写2句,转2次
2、在服务器端对参数进行解码
String
loginName
=
ParamUtil.getString(request,
"login_name");
loginName
=
java.net.URLDecoder.decode(loginName,"UTF-8");
试试,我这样自己那能解决问题的 参考技术A url传过去的是
ISO8859-1
的
字符集
,String
newString
=
new
String(
oldString
.getBytes("
ISO-8859-1
"),"UTF-8"),转换一下就可以了,如果你用的是tomcat,可以修改server.xml,
<Connector
port="80"
protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
/>,
为
<Connector
port="80"
protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="utf-8"
/> 参考技术B url传过去的是iso8859-1的字符集,string
newstring
=
new
string(oldstring.getbytes("iso-8859-1"),"utf-8"),转换一下就可以了,如果你用的是tomcat,可以修改server.xml,
<connector
port="80"
protocol="http/1.1"
connectiontimeout="20000"
redirectport="8443"
/>,
为
<connector
port="80"
protocol="http/1.1"
connectiontimeout="20000"
redirectport="8443"
uriencoding="utf-8"
/> 参考技术C 在tomcat
中的配置文件中修改就行了...conf
下的
server.xml
中,
在
<Connector
connectionTimeout="20000"
port="8080"
protocol="HTTP/1.1"
redirectPort="8443"/>
中加个属性
URIEncoding="utf-8"
以上是关于java Struts2 url 传参 中文乱码的主要内容,如果未能解决你的问题,请参考以下文章