一般Tocant 的url編碼是iso-8859-1(查看tocat/conf/server.xml 中的Connector 節點沒有寫URIEncoding="xxxxxx") 如下:
復制代碼 代碼如下:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
如果我們在servlet 中寫如下的代碼
復制代碼 代碼如下:
String username = request.getParameter("name");//name 是get 請求過來的參數,這裡已經將get請求過來的字節碼轉化成iso-8859-1的的碼了,解碼錯誤
byte[] b = username.getBytes("iso-8859-1");//所以要重新轉化為字節碼,再用正確的編碼方式解碼,正確編碼方式就是 jsp那個頁面的編碼方式,
username =new String(b,"GBK");
System.out.print(username );