url傳遞中文
若是jsp頁面,myeclipse、web.xml中org.springframework.web.filter.CharacterEncodingFilter,都是UTF-8編碼,
直接傳中文通常是不會亂碼的,若是再有亂碼,能夠用如下的方式試試。
目前收集到4中方法,中文傳參一documentPath爲例:
1.改成form方式提交,不用超連接方式提交,用form方式傳參指定不亂碼。
2.經過encodeURI(encodeURI(checkText))提交,java代碼中用URLDecoder.decode解碼:
<script>
function download(documentPath){
var url = "<c:url value='/product/download.action?documentPath='/>"+documentPath;
url = encodeURI(encodeURI(url));
window.location.href=url;
}
</script>
java代碼中取中文:
String documentPath = (String) request.getParameter('documentPath');
documentPath = URLDecoder.decode(documentPath,"utf-8");
3.修改tomcat的server.xml中的connector,添加URLEncoding="UTF-8"
4.中文從java中傳到jsp再經過url傳到java:
java中編碼:URLEncoder.encode(URLEncoder.encode("傳遞的中文","utf-8"));
java中解碼碼:URLDecoder.decode(request.getParameter('documentPath'),"utf-8");java
5.Java中將字符串轉碼web
String s = new String(filename.getBytes("ISO-8859-1"),"UTF-8");spring