我正在使用Hibernate在Java中建模模型类。但是数据库中的表已经存在,我想使用它。
问题是该表没有ID。此外,更糟糕的是,表中的元组由四列组成,它们的组合形成“一种标识/ ID”。另外,这些列对其他表也不是FK。
有没有一种方法可以使用java,hibernate等进行建模,而无需“修复/更改”表?
谢谢
答案 0 :(得分:1)
您必须使用@EmbeddedId示例定义类:
您已经存在的实体:
@Entity
@Table(name = "ENTITY_EXAMPLE")
public class EntityExample {
// this is your new class Embeddable
@EmbeddedId
private EntityExampleId id;
//other fields
//geters y seters
//////////////////////////
}
并且必须创建包含您的复合ID的4列的其他@Embeddable类
@Embeddable
public class EntityExampleId implements Serializable{
private static final long serialVersionUID = 1L;
@Column(name = "COLUMN1", nullable = false)
private Integer col1;
@Column(name = "COLUMN2", nullable = false)
private Integer col2;
@Column(name = "COLUMN3", nullable = false)
private Date col3;
@Column(name = "COLUMN4", nullable = false)
private Date col4;
//geters y seters
//////////////////////////
}
有关更多信息,请参见参考