1. 程式人生 > >如何解決 jsp 中url傳值的中文亂碼問題

如何解決 jsp 中url傳值的中文亂碼問題

第一步:在tomcat 的server.xml檔案中設定web伺服器埠配製中加下面兩句:
useBodyEncodingForURI="true"  
URIEncoding="UTF-8"


第二步:JSP頁面編碼用UTF-8(也可以用“gb2312",第一步與解碼要一至)傳值時編碼一下:
以傳遞的引數為strPar為例, 在傳遞資料前將strPar進行編碼java.net.URLEncoder.encode(strPar,"UTF-8");


第二步:解碼 在獲取資料伺服器端Action中得到的strPar進行解碼java.net.URLDecoder.decode(strPar,"UTF-8");
本人測試時傳入action中可以不解碼也正常。


舉例:


Url傳值:
<a href="myPage.jsp?strPar=<%=java.net.URLEncoder.encode("中文引數值","UTF-8")%>">點選這裡</a>


//下面是解碼
String cnStr=java.net.URLDecoder.decode(strPar,"GB2312");