【问题标题】:Spring JPA: Insert data in a @JoinTable [duplicate]Spring JPA:在@JoinTable 中插入数据 [重复]
【发布时间】:2020-08-14 22:05:29
【问题描述】:

我正在使用 Spring Boot JPA。我有作者和书籍的模型:

在 Author.java 中

@ManyToMany
@JsonIgnore
@JoinTable(
        name = "authors_write",
        joinColumns = @JoinColumn(name = "author_id"),
        inverseJoinColumns = @JoinColumn(name = "book_id"))
Set<Book> works;

Book.java

在 Book.java 中

@ManyToMany(mappedBy = "works")
@EqualsAndHashCode.Exclude
Set<Author> authors;

当插入(例如通过邮递员)数据到 Book 表时,作者对象条目不会得到更新。

发布到 Book 表时如何将数据插入到 authors_write 中?

【问题讨论】:

    标签: java mysql spring spring-data-jpa


    【解决方案1】:

    因为我只能回答而不是在这里发表评论。您仍然需要将图书设置为作者

    作者.setBook(书)

    查看 Vlad Mihalcea 的博客,了解有关 Hibernate 的所有内容。

    https://vladmihalcea.com/blog/

    另一个好人是托本·詹森

    https://thoughts-on-java.org/blog/

    【讨论】:

    • 这行得通。我用ID给作者打电话,叫author.getWorks().add(book),问题就解决了。我没有更新作者实例,删除了authors_write中作者的所有条目
    猜你喜欢
    • 2016-09-04
    • 2019-12-07
    • 2017-04-25
    • 1970-01-01
    • 1970-01-01
    • 2021-02-25
    • 2018-07-10
    • 1970-01-01
    • 2019-12-14
    相关资源
    最近更新 更多