java中get請求的中文亂碼問題,javaget中文亂碼
表單采用Get方式提交,解決亂碼的方法為:
方式一:手動解碼
param = new String(param.getBytes("iso8859-1"), "utf-8");
此方式,依賴於服務器
方式二:配置tomcat
修改tomcat的server.xml: URIEncoding="utf-8"
此方式,依賴於服務器
方式三:url編碼(不依賴Tomcat的配置,推薦):
浏覽器中兩次URL編碼。
var param = "中";
param = encodeURI(param);
alert(param);
param = encodeURI(param);
alert(param);
講param編碼兩次之後傳遞到後台
服務器中自己再做一次URL解碼。
參數傳遞到服務器時候,服務器會對參數自動的做一次解碼,我們只需要自己手動解碼一次
java.net.URLDecoder.decode(param, "utf-8");
java.net.URLDecoder.decode(param, "utf-8"); //url解碼
java.net.URLEncoder.encode(param, "utf-8"); //url編碼