[英]Many-to-one with formula in Hibernate
我有以下表格:
tableA: id[PK], name
tableB: id[PK], idTableA[FK], dateClosed
而我的 object model 如下:
class ObjectA {
private Integer id:
private String name;
private ObjectB activeB;
}
class ObjectB {
private Integer id;
private ObjectA a;
private Date dateClosed;
}
所以ObjectA中的activeB属性应该是dateClosed为 NULL 的属性(在 null dateClosed 时只能有一个ObjectB )。
我在用正确的公式编写多对一关系以获得活动的ObjectB时遇到了困难……谢谢!
看起来它实际上是 A 和 B 之间的一对一关系。
下面是Java EE 6; 不知道和hibernate有什么区别。
@Entity
class ObjectA {
@Id @GeneratedValue
private Integer id:
private String name;
@OneToOne(mappedBy = "a")
private ObjectB activeB;
}
@Entity
class ObjectB {
@Id @GeneratedValue
private Integer id;
@OneToOne
@JoinColumn(name = "idTableA")
private ObjectA a;
private Date dateClosed;
}
至于具有 null 值的单个 B,我的猜测是它无法在数据库中实现。 因此,您需要代码(非关系)的 rest 来处理这方面的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.