Sptinrg:@OneToMany多样性不起作用

时间:2017-11-04 11:42:09

标签: java hibernate

我有2个课程WrittingUser。用户可能有一个或多个Writings。我想用hibernate创建一个使用这些表的表。 我使用this链接作为教程。 我已经为hibernate添加了正确的依赖项,并在我的pom.xml中添加了lombock:

@Data
@Entity
public class User {

    @Id
    @GeneratedValue
    Long id;

    @OneToMany(mappedBy="user")
    Collection<Writting> writings=new ArrayList<Writting>() ;
}

然后Writting是:

@Entity
@Data
public class Writting {

    @Id
    @GeneratedValue
    Long id;

    @ManyToOne
    @JoinColumn(name="userId")
    User user;
}

因此,我希望它能为我提供一个由foreign key of userforeign key of writtings组成的额外表格。但是,没有这样的表格?

1 个答案:

答案 0 :(得分:0)

您尝试过的内容会在Writting表中为您提供一个额外的列,该列保留user_Id。在这种情况下,您已经成功地在用户和写作之间建立了生物方向关系。

但是,如果您希望hibernate为您提供额外的表,那么您必须删除它:

    @ManyToOne
    @JoinColumn(name="userId")
    User user;

在这种情况下,您要说的是,我希望每个user都知道他的所有writtings,但您无法从user中获取writting。它会让你成为一张新桌子。叫USER_WRITINGS