Duran's technical life
          踏踏實實學技術,認認真真做研究。

          導航

          <2010年10月>
          262728293012
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456
          統計
          • 隨筆 - 19
          • 文章 - 0
          • 評論 - 23
          • 引用 - 0

          常用鏈接

          留言簿(4)

          我參與的團隊

          隨筆分類

          隨筆檔案

          我的好友

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

           

          環境:Hibernate 2.1.7 + MySQL4.1(MySQL的編碼已設置為utf8)
          問題:通過Hibernate向MySQL寫入中文后,通過Hibernate取回數據,在console中打印java對象顯示正常。但在MySQL Query Browser中看到的是亂碼,傳給前端的Flex也是亂碼。
          原因:Hibernate的基礎還是JDBC,所以一樣需要設置characterEncoding!
          解決方法
          在hibernate.cfg.xml中應該這樣寫

          <property name="connection.url">jdbc:mysql://localhost:3306/test?useUnicode=true&amp;characterEncoding=UTF-8</property>
          如果用hibernate.properties
          #hibernate.connection.url jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8

          ps:處理中文的話,characterEncoding用GBK一樣可以。
          但字節編碼問題最好的解決方法還是統一使用UTF-8!!!
          posted on 2005-06-10 21:35 Duran's technical life 閱讀(15958) 評論(13)  編輯  收藏 所屬分類: 技術積累
          Comments
          • # re: Hibernate MySQL 中文亂碼問題
            MDZhao
            Posted @ 2005-12-29 23:53
            我就是這樣呀,可是還是不行呀?  回復  更多評論   
          • # re: Hibernate MySQL 中文亂碼問題
            beherca
            Posted @ 2006-01-24 09:53
            謝謝啦,正好遇到這個問題,我是用struts+hibernate+mysql來作系統的,做了一個filter解決了struts的亂碼,然后修改了mysql的默認編碼,但是發現還是出現亂碼的問題。呵呵,原來是這樣的~~謝謝  回復  更多評論   
          • # re: Hibernate MySQL 中文亂碼問題
            antonlan
            Posted @ 2006-06-08 22:49
            banq:

            像你如上的設置,使用程序讀取和插入是沒有問題的;但是如果我要用sql插入中文就不成了,我用過mysql的命令行和其它的客戶端工具,都插不進去。設置成GBK就沒問題了。  回復  更多評論   
          • # re: Hibernate MySQL 中文亂碼問題
            板橋居
            Posted @ 2006-07-13 14:45
            @antonlan
            if u excute a script loaded form a local file, the file should also be encoded by UTF8(UEdit can change the encode)!  回復  更多評論   
          • # re: Hibernate MySQL 中文亂碼問題
            hohoho
            Posted @ 2006-07-31 23:34
            &amp;useUnicode=true&amp;characterEncoding=utf-8&amp;mysqlEncoding=utf8

            mysql也設置成utf8,一切ok  回復  更多評論   
          • # re: Hibernate MySQL 中文亂碼問題
            andy[匿名]
            Posted @ 2006-12-05 14:06
            查詢列表沒有問題,
            (List)this.getHibernateTemplate().find("from Customer");

            但用主鍵查單個時不出,提示查找不到,當主鍵為中文時:
            customercode參數為jsp(jsp也是用的utf-8,中文顯示也正常)
            傳入,如:/xxx/xx.do?customercode=移動
            (Customer)getHibernateTemplate().load(Customer.class,customercode);

              回復  更多評論   
          • # re: Hibernate MySQL 中文亂碼問題
            小楊
            Posted @ 2008-06-05 09:06
            以上的用法果然成效,大家可以試試  回復  更多評論   
          • # re: Hibernate MySQL 中文亂碼問題
            小楊
            Posted @ 2008-06-05 09:07
            我的開發環境是Struts+hibernate  回復  更多評論   
          • # re: Hibernate MySQL 中文亂碼問題
            小董
            Posted @ 2009-05-14 20:34
            為什么我的報錯啊,我用的是SQL Server 2000,hibernate,struts

            java.sql.SQLException: 無法打開登錄 'OnlineExam?useUnicode=true&characterEncoding=UTF-8' 中請求的數據庫。登錄失敗。
              回復  更多評論   
          • # re: Hibernate MySQL 中文亂碼問題[未登錄]
            test
            Posted @ 2010-10-18 17:42
            很感謝@小董
              回復  更多評論   
          • # re: Hibernate MySQL 中文亂碼問題
            xc
            Posted @ 2011-12-08 11:16
            幸虧看到樓主的解決方法;找了快一天的問題;坑爹的編碼問題  回復  更多評論   
          • # re: Hibernate MySQL 中文亂碼問題
            仰泳...
            Posted @ 2012-05-23 08:44
            問題解決了,謝謝幫助!!!  回復  更多評論   
          • # re: Hibernate MySQL 中文亂碼問題[未登錄]
            張龍
            Posted @ 2013-04-30 13:09
            我的怎么還沒用呢?  回復  更多評論   
           
          主站蜘蛛池模板: 莱州市| 永康市| 宣城市| 吴忠市| 龙胜| 新竹县| 湖北省| 康保县| 三门峡市| 阳曲县| 廉江市| 石阡县| 屏东市| 新蔡县| 固始县| 华亭县| 庆城县| 忻城县| 民县| 苏尼特右旗| 温宿县| 仲巴县| 涪陵区| 肇庆市| 和顺县| 玉门市| 邓州市| 关岭| 光泽县| 永登县| 万荣县| 常宁市| 张掖市| 盱眙县| 甘洛县| 谢通门县| 抚松县| 金门县| 陆丰市| 江北区| 桂平市|