2016-07-26 4 views
2

Hibernate 5.2 Query<R>.setParameter(String name, Object val, Type type)は推奨されておらず、代わりにorg.hibernate.query.Queryを使用しています。廃止されたsetParameter(String name、Object val、型の型)の代わりに

私はこれをしなかった:

org.hibernate.query.Query<String> q = s.createQuery("select f from Foo f where f.bar = :bar", String.class); 
q.setParameter("bar", "bar", org.hibernate.type.StringType.INSTANCE); 

私のEclipseはまだ.setParameter(が廃止されていることを訴えます。

パラメータをクエリにバインドする際に、どのように型をオーバーライドできますか?

答えて

4

javadocクラスがorg.hibernate.Queryの場合は、インタフェース契約全体が廃止され、新しいorg.hibernate.query.Query契約に置き換えられました。

org.hibernate.query.Queryで新しいクエリ契約には、その相当しています:

Query<R> setParameter(String name, Object value, Type type); 

UPDATE

問題がありました5.2.1.Finalリリースで修正されましたHHH-10839をログに記録。この修正により、この方法がorg.hibernate.query.Query契約に追加されました。

+0

私は新しい「クエリ」契約を使用しています。しかし、私のコードは正しい 'setParameter'を使うことができません。上記の質問の更新を参照してください。 – Gustavo

+0

5.2.1.Finalへの更新により、廃止予定の警告が回避されます。 – Naros

関連する問題