2016-12-17 60 views
6

私はデータベース内で挿入操作を行うために、HibernateでcreateSQL()メソッドを使用しています。Hibernate 5.2.5.final createSQLQuery()メソッドは非推奨

テーブルのフィールドにMD5()関数を適用できるように、カスタムSQL文を宣言します。だから私はただ単にsave(Object)メソッドを使用するだけではできません。予想通り、この挿入操作を実行しているのにもかかわらず The method createSQLQuery(String) from the type QueryProducer is deprecated.

は、私が言うのEclipse IDEから警告を受けました。

私のプロジェクトで使用しているHibernateの現在のバージョンは5.2.5です。最終的なものです。

それで、問題は、この厄介な警告を取り除くためにHibernateのこのバージョンで同じことを達成する別の方法がありますか?

私はまた、@SuppressWarnings("deprecation")アノテーションを追加することで問題を解決することができますが、今後問題が発生するかどうかはわかりません。

私はこのフレームワークを使用していることに言及する価値があります。

答えて

15

非推奨QueryProducer.createSQL(String)のJavadocが代わりに使用するかを説明します

推奨されていません。 (5.2以降)代わりにcreateNativeQuery(String)を使用します。
指定されたSQLクエリ文字列に対してNativeQueryインスタンスを作成します。

あなたが将来的に問題を得ることができますので、ジャスト@SuppressWarnings("deprecation")を追加すると、通常は良い考え、 ではありません。今度は廃止予定のメソッドが削除された新しいHibernateのバージョンに移動したときです。