2016-06-02 21 views
0

EclipseLinkでJPAを使用してmySQLデータベースに接続しています。私はutf-8テキストを書いており、MySQL Workbenchのデータを照会することで正しいエンコーディングで書かれていることを検証できます。しかし、私は私のjavaコンソールアプリケーションからデータを取得するとき、エンコーディングが間違っています。JPA with EclipseLink:デコード文字セット問題

私は、接続URLにcharacterEncodingを追加しようとしましたが、運はありません!

<property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/testdb?useUnicode=yes&amp;characterEncoding=UTF-8&amp;characterSetResults=UTF-8&amp;"/> 

お勧めはありますか?

+0

いくつかの助けを得るために、データ取得を実行しているコードを含める必要があります。そして、コンソールアプリケーションから返されるデータエンコーディングは何ですか? –

答えて

0

DBのデータ型がJSONのため、mediumtext CHARSET utf8に変更しました。つまり、適切なエンコーディングでデータを取得しました。 MySQLのdocumentationからjsonのデータ型はutf8mb4に保存されるので、JSONデータ型ではうまくいかない理由はまだ分かりません。また、私はWorkbenchでデータを読み込むことができ、適切なエンコーディングを持っているので、これはmysqlの問題ではないと思います。私の唯一の推測は、JSONのデータ型はmysql/JPA統合のバグがかなり新しくなっているからです。

関連する問題