龍行天下

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

          hibernate的中文問題的解決方案

          系統(tǒng)配置:win2k3 server,jsdk 1.5.0 rc,mysql 4.0.20a,hibernate 2.1.0 ,elcipse 3.0.1
          問題描述:在使用hibernate作為數(shù)據(jù)持久層的方案時,照樣會遇到中文問題,具體情況時插入到數(shù)據(jù)庫中的漢字顯示為??,顯示數(shù)據(jù)時漢字為??
          探索: 經(jīng)過試驗(yàn)發(fā)現(xiàn)與漢字編碼有關(guān)的地方有以下兩處,一個是數(shù)據(jù)庫連接url ,一個是編程時獲取Configuration 類的實(shí)例的語句的方式。
          方案1:
          ??? * 編程時獲取Configuration 類的實(shí)例的語句為
          ??? * new Configuration().addClass(xx.class);
          ??? 必須在hibernate.properties文件里數(shù)據(jù)庫連接url后加上?characterEncoding=gbk&useUnicode=true
          方案2:
          ??? * 編程時獲取Configuration 類的實(shí)例的語句為
          ??? * new Configuration().configure().
          ??? 在hibernate.cfg.xml文件的<session-factory/>塊中設(shè)置
          ??????? <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頁面的編碼有關(guān)試了一下,好像不起作用。

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

          評論

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

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

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


          不錯哦
          2006-05-28 10:44 | pc
          主站蜘蛛池模板: 莆田市| 英超| 铅山县| 怀来县| 康马县| 会东县| 凤翔县| 当阳市| 古交市| 公安县| 灵丘县| 浮山县| 盐城市| 泰来县| 策勒县| 滦平县| 枞阳县| 苍南县| 赤峰市| 隆子县| 孟连| 买车| 新龙县| 太和县| 黔西| 犍为县| 云浮市| 奉贤区| 武山县| 随州市| 丰原市| 山东| 肥西县| 兴海县| 交口县| 利津县| 饶平县| 夏河县| 麦盖提县| 迭部县| 和硕县|