我有一个类Product
和一个类Part
,其中每个部分只能属于一个产品。每个产品都有一个零件清单,但零件没有参考它的产品。
@Entity
@Table (name= "products")
class Product {
@Id
@GeneratedValue
@Column(name = "Id")
int id;
@Column(name = "Name")
String name;
@???
List<Part> myParts;
部分:
@Entity
@Table (name= "parts")
class Part {
@Id
@GeneratedValue
@Column(name = "Id")
int id;
@Column(name = "Name")
String name;
}
在我的数据库中,“products”表不存储有关其部件的信息,但“parts”表在“product_id”行中跟踪产品。
产品:
| 编号 | 姓名 |
部分:
| 编号 | 姓名 | 产品编号 |
我认为 OO- 和 ORM“世界”的这种相反方法是很正常的,但我不知道如何将我的对象与 Hibernate 持久化到这种结构!
对于一对多注释,我只找到了零件 ID 将存储在产品表中的示例。对于多对一,似乎我需要在零件对象中引用产品,不是吗?
我希望我错了!;)
有谁知道是否有办法在不改变我的类或表结构的情况下映射它?
(如果你能用注释而不是 xml 来解释它,我会非常非常高兴:))