【发布时间】:2023-03-23 17:31:01
【问题描述】:
有 3 个实体:1)问题,2)它们之间的标签和连接表 - Question_Has_Tag
java 中的相同对象,除了连接表。取而代之的是:
public class Question {
//
@ManyToMany(fetch = FetchType.LAZY)
@JoinTable(name = "question_has_tag",
joinColumns = @JoinColumn(name = "question_id"),
inverseJoinColumns = @JoinColumn(name = "tag_id"))
private List<Tag> tags;
public class Tag {
//
@ManyToMany(mappedBy = "tags", fetch = FetchType.LAZY)
@ContainedIn
private List<Question> questions;
要转换的查询是:
select * from question as q
join question_has_tag as qht on q.id = qht.question_id
where qht.question_id in (select question_id from question_has_tag where tag_id = 1);
我对连接表和集合感到困惑。将一个转换成另一个
如果您需要更多代码或信息,请告诉我
【问题讨论】:
标签: mysql sql spring hibernate jpa