萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> jsp編程 >> Jsp頁面URL中傳遞參數亂碼的方法

Jsp頁面URL中傳遞參數亂碼的方法

   Jsp頁面在URL中傳遞參數會出現亂碼

  解決方法如下:

  一、使用更改Tomcat的方法。這個方法簡單,但是需要改動的地方是服務器軟件級別的,如果稍微變動系統將無法正確轉碼,移植性不高。

  1、來到tomcat目錄,找到conf目錄下的server.xml問價,打開,找到標簽,在最後添加URIEncoding=’GBK’,效果如下:

  view plaincopy to clipboardprint?

  

  port="8080"maxThreads="150"minSpareThreads="25"maxSpareThreads="75"

  enableLookups="false"redirectPort="8443"acceptCount="100"

  debug="0"connectionTimeout="20000"

  disableUploadTimeout="true"URIEncoding=″GBK″/>

  

  這種方法對get這個方法測試成功。

  2、在每個Jsp頁面添加如下代碼

  view plaincopy to clipboardprint?

  <%@pagepageEncoding=”gb2312″%>

  <%@pagecontentType=”text/html;charset=gb2312″%>

  <%request.setCharacterEncoding(”gb2312″);%>

  <%@ page pageEncoding=”gb2312″%><%@ page contentType=”text/html;charset=gb2312″%><%request.setCharacterEncoding(”gb2312″);%>

  編碼方式也可以改成GBK,支持繁體中文。重啟Tomcat,這一步很重要,否則可能看不到效果。

  這種方法對post測試成功。建議兩種同步使用。

  二、使用JSP的scriptLet

  view plaincopy to clipboardprint?

  <%=newString(elValue.getBytes("iso-8859-1"),"GBK")%>

  <%=new String(elValue.getBytes("iso-8859-1"),"GBK")%>

  三、使用自定義JSTL

  這是我們的重點所在,這裡要詳細說明.

  第一,編寫自定義標簽

  第二編寫tag文件

  第三部署tag文件

  第四使用吧;)很簡單的.

copyright © 萬盛學電腦網 all rights reserved