0

快速总结我想要实现的目标。请就实施或设计提出建议:)

我有两个表:用户,图像。在 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 中,我有一个用户 ID 作为外键来记录哪个用户上传了图像。但它没有布尔值,因为认为一个用户可能会上传许多图像,但只有一张是肖像。

有什么办法可以做到这一点?还是我需要维护另一个表(例如,Portrait,包含“userid”、“portraitid”映射)?

谢谢!!

4

1 回答 1

0

最简单(和标准)的方法是简单地将@OneToOne 注释添加到肖像,然后将列添加到 UserDO 表,这是 ImageDO 表的外键。

于 2013-08-17T02:34:08.957 回答