エンティティAとエンティティBの2つのエンティティがあるとします。 両方のエンティティに対して2つのテーブルが定義されています。 EntityBはEntityAの子エンティティです。 hibernate注釈を使用するjava pojosでは、以下のように、テーブルEntityAとEntityBに対応する2つのクラスを定義しました。Hibernate:親エンティティのフィルタは暗黙的に子エンティティをフィルタリングしますか?
@FilterDef(name = "myfilter", parameters = { @ParamDef(name = "year", type = "int") }, defaultCondition = ":year = year")
public class EntityA
{
@OneToMany(mappedBy="EntityA")
List<EntityB> getEntityBList()
{
}
}
public class EntityB
{
@ManyToOne
@joincolumn(name="entityA_id")
EntityA getEntityA()
{
}
}
私はEntityAでフィルタを取得しています。 EntityBのオブジェクトが、親子関係を念頭に置いて保持している、またはEntityBに明示的にフィルタを置く必要がある、EntityAのフィルタリングされたオブジェクトに対応するものだけを持っていることは暗黙のことですか?
例2010年に対応するオブジェクトがロードされるように、EntityAがフィルタリングされている場合。私はEntityBの読み込まれたオブジェクトが、2010年のみに対応するEntityAオブジェクトの子である必要があります。
私はentityBにないentityAテーブルにのみyearカラムを持っています。場合は、たとえ私もそれを直接クエリをEntityBフィルタリングしたいと仮定します。私は何をすべきか?サンプルコードを教えてください。 –
何時でも私の質問には答えられていません。疑問に思っている点を明確にしていないのですか?私の質問を改善するにはどうすればよいですか? –
保留中のすべての質問にお返事いただきありがとうございます。 –