隨筆 - 4  文章 - 10  trackbacks - 0
          <2025年7月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          常用鏈接

          留言簿(1)

          隨筆檔案

          文章分類

          文章檔案

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          1、在jsp中,字符集由<%@ page language="java" contentType="text/html;charset=GBK"%>來指定,如果處理中文,需指定為gbk。所以提交的數據全部都使用gbk編碼;
          2、在java中,從jsp提交過來的數據是gbk編碼的,而java默認的處理方式是使用ISO-8859-1編碼,所以若在java中能顯示jsp提交過來的gbk編碼方式的數據,就要進行一個轉換:將gbk轉換為ISO-8859-1,這樣數據就可正常顯示。
          3、如果要將jsp提交的數據經過java后臺處理,然后放入數據庫中,就又多了一個數據編碼方式:數據庫的數據編碼方式。以mysql為例,默認字符集為latin,所以若將gbk的數據放入,必然出現亂碼,所以首先應改變數據庫的編碼方式為gbk。

          綜上,簡單的設置方法如下:

          jsp (gbk)     ---->     java(ISO-8859-1)  -------> mysql(gbk)
                                                                          轉換
          這樣設置之后,還有一種情況會出現亂碼:當你在jsp端提交一個id號,然后在java處理端通過id號得到數據庫中的gbk(漢字)數據,這是就會出現亂碼,因為java處理的是ISO-8859-1,你在java到mysql中有了一個ISO-8859-1到gbk的轉換,而這些數據本身就是ISO-8859-1,所以轉換后就出現問題了。
          解決辦法:將在java中處理的gbk數據轉換為ISO-8859-1即可。

          總之:在jsp,java,mysql三者之間的編碼方式必須統一,不能錯誤的轉換或者不轉換。
          posted on 2007-08-17 16:31 冬天出走的豬 閱讀(444) 評論(0)  編輯  收藏 所屬分類: JAVA知識
          主站蜘蛛池模板: 阿拉善左旗| 丹阳市| 五大连池市| 梧州市| 金阳县| 永定县| 敦煌市| 溧阳市| 海阳市| 伽师县| 原平市| 抚松县| 临江市| 黄浦区| 穆棱市| 舒兰市| 桓台县| 屯留县| 隆化县| 民乐县| 铜梁县| 锡林浩特市| 呼伦贝尔市| 邳州市| 葵青区| 上高县| 辉南县| 施秉县| 肥东县| 托里县| 夏津县| 鄂伦春自治旗| 波密县| 临泉县| 西和县| 时尚| 南汇区| 西平县| 阳西县| 瑞丽市| 晋城|