java - 不指定所有者类的 OneToMany

标签 java sql database hibernate orm

我如何将带有图像的产品作为 oneToMany 加入 没有指定所有者的类别? 要为不同所有者的表使用“图像”?

@Entity
@Table(name = "product")
public class Product extends BaseModel {//baseModel has 'id' column
@Column
private List<Image> images;
}
}

@Entity
@Table(name = "image")
public class Image extends BaseModel {//baseModel has 'id' column
@Column 
private Object owner;
}

最佳答案

JPA 通常以这种方式工作。

你的实体 Product 应该装饰成这样:

@OneToMany(mappedBy="imageId")
private List<Image> images;

对于任何其他表,您只需将 mappedBy 列指定为专有名称

你的实体图片应该装饰成这样:

@ManyToOne
@JoinColumn(name="imageId", nullable=false)
private Product product

如果你想重用某个实体,我认为这是不可能的。最好的想法是不要实际使用@xTox 关系,它们只会带来痛苦

关于java - 不指定所有者类的 OneToMany,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52314025/

相关文章:

java - Android:创建一个圆形 TextView?

java - EJB SessionBean - @TransactionManagement 和@TransactionAttribute 的组合

java - 不在 Activity 之间传递的 Parcelable 数据

mysql - 将文本列设为唯一键

mysql - Rails 制作数据库 mysql

java - 用命名空间替换 XSLT?

mysql - 有效地将高分存储在数据库中

MYSQL:语法错误: 'DELETE' 在此位置输入无效

php - 对于以下场景,如何使用 SQL 查询显示按月结果?

c# - 空引用异常 C#