我有一个关键问题。我有桌子

票务信息

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不会开箱即用地处理您想要的内容。如果您将某些内容作为另一个表的属性,则以这种方式进行伪造不是正交或最佳实践。如果您无法更改它,请保持原样,除非您有非常充分的理由将奇怪的软糖写入代码中。

09-05 07:33