私はHibernate 3.5.4
バージョンをOrmとして使用しています。テーブル「ブック」のように多くの「著者」を関連付けることができます。特定の条件に基づいてManytoOneを取得します
@OneToMany(mappedBy = "key.bookId", fetch = FetchType.EAGER, cascade = CascadeType.ALL)
public Set<BookAuthor> getAuthors() {
return authors;
}
しかし、我々はソフト(私たちはisDeleted
という名前の列を維持する)の関連付けを削除するためにdeleteを使用、私は0負荷それならばその1、それは、他のロードすべきではない場合isDeleted
チェックに基づいてエンティティを取得したいです。
上記のサポートを提供するためにこの現在のフェッチ戦略を変更することが可能ですか、それとも私に教えてください。
私はどこにクラスレベルで使用してについては非常に慎重になります。私が知る限り、クラスレベルで注釈が付けられている場合はWhere-Clauseをオーバーライドできません。 getterを使用した場所またはフィルタの宣言はより柔軟です。 – samjaf
非常に同意します。しかし、この特定の目的(ソフト削除)では、アプリケーション全体を均一に処理したい場合は、それをOKにする必要があります。 – rapasoft