Java學習

          java,spring,structs,hibernate,jsf,ireport,jfreechart,jasperreport,tomcat,jboss -----本博客已經搬家了,新的地址是 http://www.javaly.cn 如果有對文章有任何疑問或者有任何不懂的地方,歡迎到www.javaly.cn (Java樂園)指出,我會盡力幫助解決。一起進步

           

          JAVA URL中帶有中文時的處理

          JAVA URL中帶有中文時的處理

          JAVA 中URL鏈接中文參數亂碼的處理方法

          解 決ajax提交中文、URL中文參數傳遞后的亂碼問題的解決辦法
          :http://www.javaly.cn/javahome/java /content.detail/%E8%A7%A3%E5%86%B3ajax%E6%8F%90%E4%BA%A4%E4%B8%AD%E6%96%87%E3%80%81URL%E4%B8%AD%E6%96%87%E5%8F%82%E6%95%B0%E4%BC%A0%E9%80%92%E5%90%8E%E7%9A%84%E4%B9%B1%E7%A0%81%E9%97%AE%E9%A2%98%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/fdc1ed6c22069c56012282a321ed0465.faces

          前面,我已經有2篇關于url中帶中文,亂碼的處理方法,今天又找到一種解決辦法,覺得這個辦法是最好的,所以再次拿出來給大家分享:

          以前做法都是把中文進行Base64編碼添加到URL后面,取得時候再用Base64解碼。這樣雖然能解決問題,但是太過于麻煩。

          不同的AppServer如何對URL進行編碼實現的原理可能會不同.(Resin和Tomcat肯定會不同)
          在Tomcat下至少做到了這四個步驟就可以解決中文編碼的問題

          (1)確定JSP頁面頭部是否有:<%@ page contentType="text/html; charset=GBK" %>
          (2)用這個轉碼:
               String param= new String(request.getParameter("param").getBytes("ISO-8859-1"), "GBK");
          (3)添加filter字符過濾器
          (4)如果是通過"a.jsp?param=中文"傳遞參數,則需要:
               a.在傳參數之前先把參數進行轉碼:java.net.URLEncoder.encode(param);
                 取值用java.net.URLDncoder.decode(param);再轉回中文
               b.在你的Tomcat目錄-->conf目錄-->server.xml里找出這段:
                 <Connector 
                   port="8080"               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
                         enableLookups="false" redirectPort="8443" acceptCount="100"
                         debug="0" connectionTimeout="20000" 
                         disableUploadTimeout="true" <!--在里邊加上這個參數-->URIEncoding="gb2312"
               /> 

          關鍵是第4步,添加URIEncoding="gb2312"

          在Resin中,修改Resin.conf

           
           <server>
            ......
           <url-character-encoding>utf-8</url-character-encoding> 
           ....... 
          </server>

          因為,Resin decodes the URL before it dispatches to a <web- app> to the  <url-character-encoding> needs to be at the <server> level.

          posted on 2009-07-16 16:43 找個美女做老婆 閱讀(9491) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          導航

          統計

          公告

          本blog已經搬到新家了, 新家:www.javaly.cn
           http://www.javaly.cn

          常用鏈接

          留言簿(6)

          隨筆檔案

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 深州市| 本溪| 科技| 崇明县| 保亭| 得荣县| 修武县| 正宁县| 金华市| 松潘县| 获嘉县| 阿克陶县| 鹤岗市| 龙州县| 广宁县| 大竹县| 报价| 镇坪县| 惠州市| 寿宁县| 泰来县| 巴楚县| 民丰县| 博乐市| 镇远县| 京山县| 清苑县| 图木舒克市| 玉田县| 库尔勒市| 耒阳市| 中西区| 禹城市| 台中市| 平和县| 百色市| 隆德县| 宽城| 木里| 商洛市| 香格里拉县|