3
刪除連接表中的行我有以下模型:文章可以有一些標籤,並且標籤可以在一些文章上。 因此,它與3代表一個多一對多的關係:如何使用JPA
- 條
- ARTICLE_TAG
- TAG
當我刪除一個標籤,我想刪除:
- TAG中的標籤
- 標籤和th之間的所有關係在ARTICLE_TAG標記的文章
但我不想刪除ARTICLE當然的文章。
我該怎麼做?
我嘗試這一點,但它不工作:
Session session = HibernateUtil.getSessionFactory().getCurrentSession();
for (Article article : tagToDelete.getArticles()) {
article.getTags().remove(tagToDelete);
}
session.delete(tagToDelete);
謝謝!
@Entity
@Table(name="ARTICLE")
public class Article extends AbstractAuditedEntity {
@Id
@Column(name="ID", nullable=false)
private Long id;
@ManyToMany
@JoinTable(name="ARTICLE_TAG", [email protected](name = "ARTICLE_ID"), [email protected](name = "TAG_ID"))
private Set<Tag> tags = new HashSet<>();
public Article() {}
/** Getters & Setters */
}
@Entity
@Table(name="TAG")
public class Tag {
@Id
@Column(name="ID", nullable=false)
private Long id;
@ManyToMany(mappedBy="tags")
private Set<Article> articles = new HashSet<>();
public Tag() {}
/** Getters & Setters */
}
你弄明白了嗎? –
你如何創建你的表?使用休眠2 ddl? –