簡體   English   中英

EntityManager數據傳輸到mySQL中的UTF-8編碼問題

[英]UTF-8 Encoding issue in EntityManager data transfer to mySQL

我有2個項目都使用相同的mySQL數據庫。 一個是Master / Detail桌面應用程序,另一個是使用PrimeFaces-4.0的JSF Crud。 -盡管我的JDBC連接為UTF-8,但如下所示:

jdbc:mysql://localhost:3306/db_name?useUnicode=yes&characterEncoding=UTF-8
  • 數據庫字段也是utf-8_general_ci
  • 我將Glassfish JDBC屬性定義為:useUnicode,true characterSetResults,UTF-8 characterEncoding,UTF-8

但是我還是得到“?” 當我輸入非英語字符串時,會將字符輸入我的數據庫!

當我們開始使用Hibernate時,我遇到了同樣的問題。 將其他配置關聯到連接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,所以這對您沒有幫助; /

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM