ManyToMany双向级联,保存在一侧(所有者侧)进行,但另一侧不进行

时间:2019-03-29 13:28:15

标签: spring hibernate spring-boot

当我使用QuestionRepository持久保存问题(将标签添加到数组中)时,相应的标签以及question_tag表中的行将自动保存,但是当我保存标签(添加问题时)使用标签存储库将其添加到其Question数组),什么也没发生,我也将Cascade添加到另一侧,问题创建完毕,但question_tag表中什么也没有。

//Tag Entity
@ManyToMany(mappedBy = "tags")
private List<Question> questions;

//QuestionEntity
@ManyToMany(cascade = {CascadeType.PERSIST, CascadeType.MERGE})
@JoinTable(name = "question_tag",
        joinColumns = @JoinColumn(name = "question_id"),
        inverseJoinColumns = @JoinColumn(name = "tag_id")
)
private List<Tag> tags;

//Saving the Tag entity
Tag tag = tagRepository.findById(1L).get();
Question q = new Question();
q.setTitle("tryme44");
q.setTxt("ttttttrrrrryyyyb");
tag.addQuestion(q);
tagRepository.save(tag);

0 个答案:

没有答案