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 - Spring Cloud Feign UnsatisfiedDependencyException 异常

java - 如何在没有应用程序小部件 Activity 的情况下注册广播接收器?

mysql - 组连接查询mysql

按日期查询销售报告的SQL

linux - Aerospike 系统重新启动后不会自动启动

java - java中的中缀到后缀的转换

java - 如何在 Java 项目中将一个窗口永久保留在其他窗口前面?

sql - 如何在 SQL Server 中查找未使用的表

java.sql.SQLException : ORA-00933: SQL command not properly ended when using getGeneratedKeys 异常

ruby-on-rails - rake 数据库 :dump fails when specifying an environment