我有两个MySQL表,并希望他们与Hibernate映射:如何在Hibernate中使用一对一的关系做一个继承映射?
cars
- Id
- owner
audis:
- AudiId
- model
在代码:
@Entity
@Table(name = "cars")
public class Car{
Integer id;
String owner;
}
@Entity
@Table(name = "audis")
public class Audi extends Car{
String model;
}
我想有他们之间的加入主键,这样的audiId引用汽车表中的Id。 Ids应自动递增。
例子:
cars
id: 1 owner: "John"
id: 2 owner: "Jim"
id: 3 owner: "Jake"
audis
audiId: 1 model: "A8"
audiId: 3 model: "A6"
什么是Hibernate来做到这一点的最好方法是什么?我必须添加哪些注释?哪些代码丢失(getter和setter除外)?
我发现这个主题很多教程很混乱,所以我会很感激任何帮助。
在Hibernate中,你必须选择三种继承映射策略之一。从你的描述中,我认为“加入的子类”策略是你想要的:http://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch05.html#mapping-declaration-加入子类 – millimoose 2012-07-24 17:06:19