在很多情况下get请求会发生中文乱码的情况,而换做post就不会,这其中的根本原因是get请求默认的是使用“iso-8859-1”编码,接下来介绍两种种解决get请求编码的方法
1.自定义一个工具类
个人认为这个是最好的解决办法,而且简单
注意,如果你使用的是gbk,则需要把utf-8改成gbk
public class CodeUtil {/*** 解决get请求中文乱码问题* @param str 需要解决乱码的字符串* @return*/public static String getNewString(String str) {String newString="";try {newString=new String(str.getBytes("iso-8859-1"),"utf-8");} catch (Exception e) {e.printStackTrace();// 把iso-8859-1 转换成 utf-8} return newString;}}
2.修改Tomcat下的server.xml文件
添加URIEncoding="UTF-8" useBodyEncodingForURI="true"
这一句。使用tomcat8的需要添加useBodyEncodingForURI="true"
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8" useBodyEncodingForURI="true"/
如果觉得《解决get请求中文乱码问题》对你有帮助,请点赞、收藏,并留下你的观点哦!