龍行天下

            政 博
          隨筆 - 23, 文章 - 0, 評論 - 12, 引用 - 0
          數據加載中……

          hibernate的中文問題的解決方案

          系統配置:win2k3 server,jsdk 1.5.0 rc,mysql 4.0.20a,hibernate 2.1.0 ,elcipse 3.0.1
          問題描述:在使用hibernate作為數據持久層的方案時,照樣會遇到中文問題,具體情況時插入到數據庫中的漢字顯示為??,顯示數據時漢字為??
          探索: 經過試驗發現與漢字編碼有關的地方有以下兩處,一個是數據庫連接url ,一個是編程時獲取Configuration 類的實例的語句的方式。
          方案1:
          ??? * 編程時獲取Configuration 類的實例的語句為
          ??? * new Configuration().addClass(xx.class);
          ??? 必須在hibernate.properties文件里數據庫連接url后加上?characterEncoding=gbk&useUnicode=true
          方案2:
          ??? * 編程時獲取Configuration 類的實例的語句為
          ??? * new Configuration().configure().
          ??? 在hibernate.cfg.xml文件的<session-factory/>塊中設置
          ??????? <property name="connection.useUnicode">true</property>
          ??????? <property name="connection.characterEncoding">UTF-8</property>
          ??? 或編程時寫:
          ????? Properties extraProperties = new Properties();
          ????? extraProperties.put("hibernate.connection.useUnicode", "true");
          ????? extraProperties.put("hibernate.connection.characterEncoding", "UTF-8");
          ????? myConfiguration.addProperties(extraProperties);

          原來懷疑與xml頁面的編碼有關試了一下,好像不起作用。

          posted on 2006-05-08 14:42 feingto 閱讀(460) 評論(2)  編輯  收藏 所屬分類: Java Web

          評論

          # re: hibernate的中文問題的解決方案  回復  更多評論   

          我也遇到過這個問題
          2006-05-09 14:00 | necklace

          # re: hibernate的中文問題的解決方案  回復  更多評論   


          不錯哦
          2006-05-28 10:44 | pc
          主站蜘蛛池模板: 临朐县| 喀喇沁旗| 万年县| 永善县| 岑溪市| 东丰县| 南部县| 九台市| 临高县| 晋宁县| 正蓝旗| 安阳县| 山东省| 龙门县| 汶川县| 滨州市| 济阳县| 克山县| 广灵县| 武山县| 宜宾县| 龙岩市| 西丰县| 三穗县| 杭州市| 灵武市| 罗源县| 堆龙德庆县| 普格县| 固阳县| 德格县| 达尔| 蓬安县| 屏东县| 汪清县| 西峡县| 泽普县| 琼中| 子长县| 阿坝| 观塘区|