如果实体父级中任何布尔属性的条件为true,则填充映射属性(休眠)

时间:2018-07-30 19:22:03

标签: java hibernate

我有三个实体:

@Entity
Class Parent{
    //This id can be belong to two references
    @Basic
    @Column(name="reference_id")
    @getter @setter private Integer referenceId;
    //This variable control the source where the Id is belong
    @Basic
    @Column(name="reference_a")
    @getter @setter private boolean referenceA

    @ManyToOne
    //If referenceA == true, fill sourceA
    @getter @setter private ReferenceA sourceA;

   @ManyToOne
   //if referenceB== false, fill sourceB
   @getter @setter private ReferenceB sourceB;

}

@Entity
//Here, doesn't exist the reference to the parent Entity
public class ReferenceA{
   @getter @setter private Id;
}

@Entity
//Here either exists the reference to the parent Entity
public class ReferenceB{
   @getter @setter private Id;
}

问题在于,如果在父级中referenceA为true,则需要获取Object sourceA;如果referenceA为false,则需要获取sourceB。

我尝试使用@WhereFilter,但同时过滤了SourceA或SourceB端。

有什么建议吗?

0 个答案:

没有答案