中文亂碼問題 解決方案

形成中文亂碼的緣由可能Eclipse開發環境中,也多是出在了Hibernate存取數據時,也有多是數據庫的系統編碼問題。 java

若是是Eclipse的問題,那就對如下各項進行設置,便可排除問題。 mysql

設置eclipse相關編碼爲UTF-8:
修改工做區默認編碼,位置:windows--perferences--general--workspace
修改JSP文件默認編碼,位置:windows--perferences--web--jsp files
修改JSP文件默認編碼,位置:windows--perferences--general--content types--text--jsp file
修改配置文件默認編碼:位置:windows--perferences--general--content types--text--java properties file
設置自動格式化代碼:選中format source code--format all lines,位置:windows--perferences--java--editor--save actions
web

若是是問題是在Hibernate讀寫數據時, sql

要對hibernate鏈接數據庫的xml配置文件添加兩項: 數據庫

<property name="connection.useUnicode">true</property>
< property name="connection.characterEncoding">utf8</property>
windows

或者對鏈接的url增長參數,以下: eclipse

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

問題也多是數據庫的事,我此次都是由於MySQL的系統編碼不對形成的。 編碼

網上說MySQL默認的字符集不是utf8,而是latin2,它是在C:\Program Files\MySQL\MySQL Server 5.1下的my.ini文件中體現的,咱們能夠對其修改,將兩處default-character-se的值改成utf8便可(注意不是utf-8)。改後,重啓一下MySQL的服務,在開始菜單的MySQL命令行客戶端(MySQL command Line client)輸入 url

SHOW VARIABLES LIKE '%character_set_%'

若是顯示

character_set_client, utf8
character_set_connection
, utf8
character_set_database
, utf8
character_set_filesystem
, binary
character_set_results
, utf8
character_set_server
, utf8
character_set_system
, utf8
character_sets_dir
, E:softProgrammysqlmysql-5.0.22-win32sharecharsets


則表示修改默認字符集爲utf8成功

相關文章
相關標籤/搜索