szhswl
          宋針還的個人空間

                  中文亂碼這個問題,在我們的開發過程中是個經常遇到的問題,而這一問題的答案和解決方案也遍布互聯網的各個角落。隨便搜一下中文亂碼,可以找到符合條件的記錄成千上萬。然而由于使用框架的不同,各人的開發環境的不同,中文亂碼的情況及原因也各不相同。
                  情況:有可能是在數據庫里顯示中文而頁面進行提交時就成了亂碼,有可能頁面能正常顯示中文而數據庫里卻不能正常顯示中文。總之情況有很多種,數據庫里不能正常顯示中文有可能就是數據庫的問題,要么是建表時沒選擇好編碼要么是啟動參數等問題,而更常見的是在頁面提交的中文,在服務端就成亂碼的情況(本人昨天也遇到這情況),網上的很多解決方案,
                  首先配置web.xml的filter是必須的,而配置完畢后還是有中文問題的話,有的人說問題出在filter,用spring自帶的filter不行,自己寫了一個filter后解決;(本人是自己寫的filter);有人說tomcat4.x沒有這個問題,5.x就有編碼問題。在Tomcat的server.xml的Connector部分添加URIEncoding="GBK",server.xml添加后內容如下:

          <Connector URIEncoding="GBK" port="8080"
          maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
          enableLookups="false" redirectPort="8443" acceptCount="100"
          debug="0" connectionTimeout="20000"
          disableUploadTimeout="true" />
          本人也試過,沒用,最后查找資料查到下面三條語句的含義:

          1、<%@ page language="java" pageEncoding="gbk"%>
          2、<%@ page contentType="text/html;charset=gbk"%>
          3、<meta http-equiv="Content-Type" content="text/html; charset=gbk">

          第一句編碼格式為jsp文件的存儲格式。
          第二句web服務器在發送相應內容是使用解碼 格式。
          第三句是告訴瀏覽器需要使用UTF-8的編碼來處理web服務器的相應內容。

          雖然這三條語句可能對于解決沒有直接的作用,但是這個是亂碼產生原因的基礎所在。只要認真理解上面三條語句的含義,在頁面中統一編碼中文問題就有答案了。



          ---------------------------------------------------------------------------------------------------------------------------------
          說人之短,乃護己之短。夸己之長,乃忌人之長。皆由存心不厚,識量太狹耳。能去此弊,可以進德,可以遠怨。
          http://www.aygfsteel.com/szhswl
          ------------------------------------------------------------------------------------------------------ ----------------- ---------
          posted on 2007-12-18 09:54 宋針還 閱讀(2549) 評論(0)  編輯  收藏 所屬分類: 常見問題

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


          網站導航:
           
          主站蜘蛛池模板: 开平市| 桂东县| 宾川县| 饶阳县| 阿坝县| 梁河县| 房山区| 宜君县| 金阳县| 嘉黎县| 河南省| 溧阳市| 霍山县| 房产| 泰宁县| 新和县| 丹阳市| 阜康市| 桦甸市| 雷州市| 施甸县| 秦皇岛市| 上蔡县| 尼木县| 清徐县| 尚义县| 东辽县| 黄石市| 汕头市| 通城县| 昭通市| 鲁甸县| 清镇市| 唐河县| 石城县| 苏尼特右旗| 萨嘎县| 阳谷县| 翁牛特旗| 保亭| 新乡县|