【发布时间】:2011-08-22 00:56:40
【问题描述】:
我将这些实体与 JPA+Hibernate 一起使用:
@Entity
public class Game {
@Id
@GeneratedValue
private long id;
@ManyToMany
@JoinTable(name="Game_admins")
private Set<User> admins = new HashSet<User>();
...
@Entity
public class User {
@Id
@GeneratedValue
private long id;
...
到目前为止,一切正常。 Hibernate 生成一个名为 Game_admins 的连接表,其中包含两个列,Game_id 和 admins_id。
但是,如果我将此添加到 User:
@ManyToMany(mappedBy="admins")
private Set<Game> adminForGames = new HashSet<Game>();
连接表突然得到三列,其中一列是adminForGames_id。我不需要也不想要那个,而且我认为它不应该生成,因为我指定了mappedBy。我做错了什么?
【问题讨论】:
标签: java hibernate orm jpa many-to-many