[英]How to use same entity in different relations in JPA?
我创建了一个名为Image
的实体。 它包含我保存在数据库中的图像元数据等。 目前,我在Question
和Image
之间存在one-to-many
关系。 因此,我在问题实体的图像列表上声明了@OneToMany
和@JoinColumn
注解。 这意味着在我的情况下,图像表中有一个名为question_id
的外键。
我也想在其他关系中使用此实体。 User
可能有图像等等。 但是,这意味着我也需要图像表中的user_id
列。 随着这种情况的发展,这似乎是一种不好的方法。
我怎样才能做到这一点? 我是否需要使用继承并创建诸如QuestionImage
, UserImage
等的子类?
还是还有其他更好(和更简单的方法)?
不要定义JoinColumn。 一对多单向关联的默认设置是使用JoinTable(正是出于这个原因)。
如果您未指定@OneToMany(...)
以外的任何内容,则将使用JoinTable。 您当然可以使用@JoinTable
批注自定义其名称和列名称。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.