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

Hibernate亂碼問題解決

編輯:SyBase教程

Hibernate亂碼問題解決


亂碼問題其實歸根接地就是兩端的字符集不統一。
解決思路也有兩種:
1. 修改兩端字符集統一。
2. 通過代碼進行轉碼,從而達到字符集的統一。

在Mysql中,默認使用的字符集是latin1(拉丁文),所以我會在建立數據庫時,將數據庫默認編碼設置為utf-8.

對於亂碼的解決思路,
1. 查看在插入數據庫前,數據的實際內容,如果已經是亂碼了,那麼就是代碼中有錯誤,和數據庫是無關的。
2. 查看數據庫中的數據,如果是亂碼,那麼一般情況下,就是由於數據庫和輸入端的字符集不統一導致的。
3. 檢查數據庫字符集,和java的數據集
4. 修改一方

在配置文件中設置(xml)

<property name="connection.useUnicode">true</property> 
<property name="connection.characterEncoding">UTF-8</property>

在連接字符串設置

properties:
url=jdbc:mysql://localhost:3306/msms?useUnicode=true&characterEncoding=utf-8
xml:
<property name="url" value="jdbc:mysql://localhost:3306/test?useUnicode=true&amp;characterEncoding=utf-8"></property>

mysql字符集設置

查看字符集
show variables like ‘character%’
設置字符集
set character_set_database = utf8;
修改表的字符集
ALTER TABLE hibernate1.news CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
查看表信息
SELECT * FROM information_schema.tables WHERE table_schema = ‘test_utf8’ ORDER BY table_name DESC;

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