2012-07-27 43 views
1

首先我知道這個問題是已知的,並且有很多答案,但是我的是有點不同或不尋常的。具有特殊字符和數據庫的java程序

所以,我使用Eclipse SDK Version: 3.7.1,我正在開發Java應用程序(JRE 1.7),它將與數據庫一起工作。

由於應用是在克羅地亞語我有特殊字符的問題 - čćđ及其插入到數據庫(MySQL的數據庫管理系統,嵌入XAMPP)。

但是,我知道一點關於編碼的東西,我試圖DB設置爲cp1250_croatian_ciUTF8_unicode_ciUTF8_general_cilatin2_croatian_ci,但可悲的是我有同樣的問題,每個那些。 (是強制要求每一個連接到數據庫後SET NAMES utf8(或類似的東西)?)

另外,我想指出來,在插入(čćđ)phpMyAdmin的作品裏面精細。

所以,如果我想要插入到數據庫字符čćđ他們都表示爲。基本上這意味着編碼或字符集或其他東西是問題。

而且我使用JDBC驅動程序:mysql-connector-java-5.1.18-bin 來源:docs

我想提一提,我沒有問題,而DB是godaddy.com服務器

託管在另外的項目文本編碼(在Eclipse中)設置爲「從容器(CP1250)繼承」,我也嘗試過UTF-8,但這並沒有幫助我。

回答

1

我認爲你可以做如下 1首先你應該設置mysql編碼爲utf-8; 2秒當你連接數據庫,你應該設置連接屬性如下 你可以試試這個
jdbc:mysql://ip:3306/yourDBName?useUnicode=true&characterEncode=UTF-8

我認爲當你使用JDBC連接可能是你失去了useUnicode=true&characterEncode=UTF-8

+1

是的,這幫助,謝謝你很多! – 2012-07-28 02:13:16

+0

@chunxiao但這並不適用於我,我已經通過調試在應用程序中對源代碼進行了三重檢查,但是當我插入/更改記錄時,斯洛文尼亞文**仍然會轉換爲**?**。你有其他的想法嗎? – KernelPanic 2015-11-06 12:39:52