我有一个产品,我正在尝试将类别关联到该产品。类别列表是静态的。我已经建立了双向多对多关系,Product
并Category
使用Set<?>
如下属性:
class Product {
@ManyToMany
public Set<Category> categories;
}
class Category {
@ManyToMany(mappedBy = "categories")
public Set<Product> products;
}
我希望某些用户保持这种关系,但我之前看到的唯一方法是只使用 aList<Long>
传回控制器并适当添加。这工作正常,直到用户需要编辑这些映射。我曾尝试清除这种关系,但这也并不简单。
有没有一种体面的方式来维持这种关系?如果我唯一的选择是“循环和删除”引用,有人能指出正确的方向吗?到目前为止,我失败的尝试如下所示:
for(Category category : product.categories) {
category.products.remove(product);
}
和
Category.delete("categories.id = ?", product.id)