【发布时间】:2020-11-07 21:01:28
【问题描述】:
我在为这个问题寻求解决方案时遇到了两难境地。我有两个(可以是任意数量)共享相同标签的博客文章。
我为每个添加的帖子设置了一组标签,因此不可能出现重复的标签,所以假设我添加了带有标签“汽车”和“蓝色”的第一篇文章,以及带有“汽车”和“红色”的第二篇文章。然后我将在数据库标签表中有汽车、红色、蓝色,所以汽车只有一次,但两个帖子共享它,这使我处于无法删除任何两个帖子的情况,因为共享标签。
如何仅在删除最后一个帖子而不是之前(当我删除第一个帖子时)删除标签?我认为没有任何级联类型可以帮助我解决这个问题,但我可能弄错了? (我使用了 All 和 Remove 但这不起作用) 我有什么解决方案?
我正在使用带有 MySQL 的 Spring Boot。
如果有人能指出我正确的方向,我将不胜感激!
L.E :对于任何有同样问题的人,我用过
cascade = {CascadeType.MERGE, CascadeType.PERSIST} 在帖子(父)标签(子)多对多关系上。并在删除最后一篇文章后使用循环删除剩余的标签。到目前为止一切正常。
【问题讨论】:
-
你如何记录使用的标签?每次删除帖子时,您都可以减少计数。
标签: java mysql spring spring-boot