一、在請求頁面的請求參數需要用encodeURI進行轉碼,然後在接收請求的頁面需要進行字符集轉換。 本例中的請求和接收頁面的字符集都是UTF-8: 1.請求的JSP頁面用JavaScript的encodeURI()方法將參數轉碼: function toView(param){ var encodeparam = encodeURI(param) ; window.location.href="/naias/advAna_form.do?method=showDetail&title="+encodeparam ; } 2.在跳轉的Action中進行字符集轉換: www.2cto.com public ActionForward excute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response){ String title= request.getParameter("title"); title= new String( title.getBytes("iso-8859-1"), "UTF-8"); System.out.println(title); } 二、為編碼為UTF-8的JSP頁面傳參,對於中文亂碼的解決分為兩種情況: 1.通過GET方式傳參,通過new String(request.getParameter("").getBytes("ISO-8859-1"),"UTF-8"); 的方式轉換為需要的編碼,如UTF-8等。 2.通過POST方式傳參,通過聲明request.setCharacterEncoding("UTF-8");的方式聲明編碼類型來解決。 三、可以通過加過濾器,解決亂碼 ,但是對GET方式提交的參數(也就是通過地址欄穿的參數)不起作用。 四、如果用tomcat服務器,可以更tomcat的配置文件將字符集編碼設置為UTF-8即可。