快速总结我想要实现的目标。 请提供有关实施或设计的建议:)
我有两个表:User,Image。 在UserDO中,我想保留一组所有用户的图像,以及单个图像,即用户的肖像(在我的情况下,该集将包括肖像):
public class UserDO {
@OneToMany
@JoinColumn(name = "imageid")
Set<ImageDO> userimages
// How to represent this? the foreign key is used for the above mapping
ImageDO portrait;
....
}
在ImageDO中,我有一个userid作为外键来记录哪个用户上传了图像。但它没有布尔值,因为认为一个用户可以上传许多图像,但只有一个是肖像。
任何方式都可以实现这一目标?或者我是否需要维护另一个表(例如,纵向,包含“userid”,“portraitid”映射)?
谢谢!
答案 0 :(得分:0)
最简单(和标准)的方法是简单地将@OneToOne注释添加到肖像中,然后将一列添加到UserDO表中,该表是ImageDO表中的外键。