get请求参数为中文,参数到后台出现乱码(注:乱码情况千奇百怪,这里贴我遇到的情况)
前言
get请求的接口从页面到controller类出现了乱码。
解决
参数乱码:
String param = "...";
使用new String(param.getBytes("iso-8859-1"), "utf-8"); 强制将此字符串转换成utf-8编码 ,可以转换成正确的中文。
猜测可能是网页使用的iso-8859-1,到后台没有进行转码,如果每个参数都手动转码,岂不是很麻烦,所以继续百度。。。。。找到了解决方案。
在tomcat中的server.xml中设置编码. 加一个URIEncoding就行了
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8"/>
关于http协议