2014-02-24 16 views
0

我有兩個項目都使用同一個mySQL數據庫。一個是Master/Detail桌面應用程序,另一個是使用PrimeFaces-4.0的JSF Crud。 - 雖然我的JDBC連接是UTF-8:EntityManager數據傳輸到mySQL的UTF-8編碼問題

jdbc:mysql://localhost:3306/db_name?useUnicode=yes&characterEncoding=UTF-8 
  • 數據庫字段也UTF-8_general_ci
  • 我定義Glassfish的JDBC屬性: 了useUnicode,真正 characterSetResults,UTF-8 characterEncoding,UTF-8

但是我仍然得到'?'當我輸入非英文字符串時,將字符輸入到我的數據庫中!

+0

試試這個http://mathiasrichter.blogspot.com.br/2009/10/character-encoding -utf-8-with.html – Leo

回答

0

當我們開始使用Hibernate時,我遇到了同樣的問題。 Assing額外的配置,以連接URL並沒有解決問題,但是我們並添加以下屬性

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

和什麼解決問題。嘗試從URL字符串中除去參數,讓它那麼它會成爲像

jdbc:mysql://localhost:3306/db_name 

我希望這將解決您的問題。

編輯: 我只注意到你沒有使用Hibernate在所有所以這不會幫助你;/

+0

謝謝,但不幸的是我沒有使用Hibernate!我使用JPA! –

+0

'useUnicode = yes',不應該是'useUnicode = true'? – Antoniossss

+0

它已經useUnicode = true –