我有一个场景,在hibernate中实现了一个实体层次结构。它的继承类型是InheritanceType.JOINED。
父类:
子类边界
子类百分比
我有一个客户实体类,它与Loy实体类通过@ManyToOne进行关联。 每个客户只能同时与一个Loy关联。
我想要实现的是,我想使用唯一ID(护照号)查询客户类,然后通过客户实体中的@ManyToOne映射 获取特定客户的Loy。
我遇到的问题是我不知道哪个Loy子类与客户相关联。
父类:
@Entity
@Table(name = "LOY")
@Inheritance(strategy=InheritanceType.JOINED)
public class Loy implements Serializable
子类边界
@Entity
@Table(name = "LOY_BOUNDARY")
@PrimaryKeyJoinColumn(name="ID")
public class LoyBoundary implements Serializable
子类百分比
@Entity
@Table(name = "LOY_PERCENTAGE")
@PrimaryKeyJoinColumn(name="ID")
public class LoyPercentage implements Serializable
我有一个客户实体类,它与Loy实体类通过@ManyToOne进行关联。 每个客户只能同时与一个Loy关联。
我想要实现的是,我想使用唯一ID(护照号)查询客户类,然后通过客户实体中的@ManyToOne映射 获取特定客户的Loy。
我遇到的问题是我不知道哪个Loy子类与客户相关联。
- 我可以使用instanceOf来获取特定子类,但我希望尝试避免这种方法。
- 我还可以在子类实体中添加访问者模式,但不确定这是否是最佳实践。