程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> Hibernate中 MySQL的中文編碼解決辦法

Hibernate中 MySQL的中文編碼解決辦法

編輯:MySQL綜合教程

你這種情況不只是在Hibernate中會碰到,就是在我們現在主流的php中同樣會碰到,如果你的數據庫編碼與頁面編碼不一樣,就可能出現中文亂碼的問題。

 今天在用Hibernate向MySQL中插入數據時出現了亂碼的問題,具體表現時我在插入前用utf-8打印出來中文時OK的,然後用MySQL Workbench設置成uft-8來顯示從MySQL中查詢出來的數據也是正確的,但是當我把代碼中的數據插入數據庫之後再進行查詢時查詢出來的就是亂碼了,不知道怎麼設置,因為兩頭utf-8都沒問題,那問題肯定時出在了中間環節,也就是connect的時候。網上到處找結果終於找到了。

我們只需要在hibernate.property或者時hibernate.cfg.xml(取決於你是怎麼連接數據庫的)文件中進行一下設置就OK了。

原本我的連接語句是這麼寫的:

 代碼如下 復制代碼

<property name="connection.url">

jdbc:mysql://localhost:3306/tablename

</property>

 

      然後我修改成了:

 代碼如下 復制代碼

<property name="connection.url">

jdbc:mysql://localhost:3306/tablename?useUnicode=true&characterEncoding=utf8

</property>

發現還是不行,原來是要改成這樣:

 代碼如下 復制代碼

<property name="connection.url">

<![CDATA[

jdbc:mysql://localhost:3306/tablename?useUnicode=true&characterEncoding=utf8

]]>

</property>

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved