美好的一天!我有两个类“用户”和“成就”。用户有很多成就,并且成就可以被很多用户获得。
我发现的任何示例都使用只有两列的 user_achievement 表 - user_id 和 Achievement_id。但我想在此表上存储一些额外的参数 - 例如,用户获得成就的日期。
如何使用 hibernate-xml 配置来做到这一点?
最佳答案
您可以添加另一个实体AchievementInstance
,然后您就可以在User
和该实体之间建立OneToMany
关系。 AchievementInstance
具有日期和所需的任何其他附加字段,以及与 Achievement
实体的 ManyToOne
关系。
@Entity
class User {
@OneToMany
List<AchievementInstance> achievements;
}
@Entity
class AchievementInstance {
@ManyToOne
Achievement achievement;
...
Date date;
}
@Entity
class Achievement {
...
}
关于java - 使用附加参数 hibernate 多对多,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27389603/