2016-07-19 8 views
3

私はいくつかのNOT NULL休止状態検証が適用されたモデルを持っています。これらのクエリの実行中にのみ検証が緩和されるように、DAOクエリ(作成/更新)をほとんど実行する必要はありません。 DAOレイヤに必要なクエリがあるので、検証を完全に無効にしたくありません。休止状態の問い合わせを実行している間、休止状態の検証を条件付きで無効にします。

答えて

0

あなたのスキーマがHibernateによって生成されなかった場合、またはHibernateが最終的にそれほどスマートでない場合、ネイティブクエリを介して@NotNullのチェックを回避する方法がありました。アプリケーション層の検証をトリガーせずにネイティブにデータベース行を挿入/更新しようとする可能性がありますが、Hibernateは@NotNullという注釈付きフィールドに対してNOT NULLデータベース制約を生成するのがとても親切です。

実装されている検証の制限に準拠していないクエリを実行する必要があるのはなぜかと思います。一般的に、ターゲットはデータベースにNULL値を挿入しないようにする必要があります。