3
您好,我正在學習使用JPA的@ManyToMany關係映射。 我或多或少地理解它是如何工作的,但我有疑問。首先,讓我給你看看這個代碼,我做了一些映射:JPA懷疑映射@ManyToMany
@Entity
public class EntityE implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long eId;
@ManyToMany
@JoinTable(joinColumns =
@JoinColumn(name = "eId"), inverseJoinColumns =
@JoinColumn(name = "fId"))
private Collection<EntityF> entityFs;
//...
}
也看到其他實體:
@Entity
public class EntityF implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long fId;
private Collection<EntityE> entityEs;
//...
}
這是我在數據庫中獲取:
我的疑惑是:
- 我想創建一個@ManyToMany關係在EntityE是關係所有者的情況下,這種方法是否正確?
- 我想要關係是單向的,所以它應該創建一個名爲EntityB_EntityF的中介表。但由於某種原因,它還創建了另一個名爲EntityF_EntityE的表。我不明白這是爲什麼?這是正常的嗎?如果不是,我應該如何解決它?