我有一个关键问题。我有桌子
票务信息
TICKETINFOID pk,备注varchar(128),TICKETDATE时间戳
它有一个带有休眠注释的对应类,看起来像这样
@Entity
@Table(name = "TICKETINFO")
public class Ticketinfo implements Serializable {
@Id
@Column(name = "TICKETINFOID")
private Long id;
@Column(name = "TICKETDATE")
private String date;
@column(name = "REMARK")
private string remark;
//getters and setters
}
现在我的工作是我需要创建一个TICKETINFO表的子表
TICKETINFO_REMARK
TICKETINFO_REMARK_ID pk,TICKETINFOID fk,REMARK varchar(128)
TICKETINFOID是TICKETINFO表中的外键,并且必须为相应的TICKETINFOID填充TICKETINFO_REMARK的REMARK字段以及TICKETINFO的REMARK字段。
对于1个TICKETINFOID,将有一个REMARK,并且它可以为null。
Ticketinfo.java中REMARK的数据类型必须保留为字符串。我可以添加额外的逻辑,但不能更改现有流程。
请帮助我,因为我陷入了严重的混乱。
最佳答案
听起来一对一会完成子表的链接。对于备注本身,您可能要劫持访问器和更改器,因为我认为Hibernate不会开箱即用地处理您想要的内容。如果您将某些内容作为另一个表的属性,则以这种方式进行伪造不是正交或最佳实践。如果您无法更改它,请保持原样,除非您有非常充分的理由将奇怪的软糖写入代码中。