2017-10-17 8 views
1

私のアプリケーションでHibernate 5.1を使用しています。今度は、すべてのjava.util.dateクラスをjava.time java 8クラスに変換したいと思います。すべてのソースコードを新しいJava 8標準に変更しました。私はのlocalDataへのマッピングが含まれている最初のクエリを照会するときしかし、それはエラーがスローされます。Hibernate 5.1でjava.timeを使用

java.lang.ClassCastException: java.sql.Date cannot be cast to java.time.LocalDate 

休止-java8ジャーは私のクラスパスにあります。

誰かがjava.util.dateのかわりにjava.timeクラスを使用するのを助けることができますか? Hibernateの設定で何かを設定する必要がありますか?

+1

いくつかのコードを表示できますか?エンティティマッピングとクエリは良いスタートになるでしょう... –

答えて

1

は、私はこの問題は、例外がjava.sql.Datejava.time.LocaleDateからcast Exceptionがあることを述べているHibernate 5.1によってLocaleDateのサポートについてはないと思います。

Hibernate 5.1 User Guideをチェックすると、LocalDateTypeクラスのHibernateがjava.time.LocaleDateの補充タイプを提供していることがわかります。

java.time.LocaleDateの代わりにorg.hibernate.type.LocalDateTypeをあなたのエンティティで使用してください。