做项目遇到一个需求,要以get接口传中文到后台,结果后台接收到的中文参数为乱码解决方法如下:
1.首先把tomcat的配置文件server.xml中添加编码处理
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="GBK"/>
2.接收参数值得时候,先判断是否为中文
/**
* 判断是否为中文
*
* @param str 入参
* @return true:中文false:非中文
* */
public static boolean isChineseChar(String str) {
boolean temp = false;
Pattern p = Pattern.compile("[\u4e00-\u9fa5]");
Matcher m = p.matcher(str);
if (m.find()) {
temp = true;
}
return temp;
}
如果是中文乱码,转一下编码就行了
brandName = new String(brandName.getBytes("iso8859-1"), "utf-8");