我有两张桌子:

A
s_id(key) name cli type

B
sa_id(key) s_id user pwd

所以在日本
我有:
@Entity
class A...{
   @OneToMany(fetch=FetchType.EAGER)
    @JoinTable( name="A_B",
    joinColumns={@JoinColumn(name="a_id", table="a",unique=false)},
    inverseJoinColumns={@JoinColumn(name="b_id", table="b", unique=true)} )
   Collection<B> getB(){...}
}

B类只是一个基本的实体类,没有对A的引用。
希望这是清楚的。我的问题是:我真的需要一个连接表来完成这样一个简单的连接吗?不能用一个简单的joincolumn或其他什么东西来完成吗?

最佳答案

您不需要为此提供jointable。如果B类没有对A类的引用,那么以下内容就足够了

@Entity class A...{
@OneToMany(fetch=FetchType.EAGER)
Collection getB(){...} }

在大多数情况下,虽然您可能需要双向关系,在这种情况下,B有对A的引用。在这种情况下,您需要查找@mappedby注释。保罗提到的。

关于database - JPA和2个简单表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/167193/

10-13 04:31