0
我有两个实体存在多对多关系,我无法加载Set <Category> categories
。这些字段填充到数据库中。Spring MVC - 从数据库加载数据
@Entity
@Table(name="Product")
public class Product {
@Id
@GeneratedValue
private int idProduct;
private String status;
private String name;
@ManyToMany(fetch = FetchType.EAGER, mappedBy= "products")
private Set <Category> categories;
}
@Entity
@Table(name="Category")
public class Category {
@Id
@GeneratedValue
private int idCategory;
private String name;
@ManyToMany(fetch = FetchType.EAGER)
private Set <Product> products;
}
这将在视图中返回任何内容,并且循环不会旋转一次。
<c:forEach items="${product.categories}" var="items">
<p>${items.name}</p>
</c:forEach>
我加入了模式。有人可以写些什么来使它工作吗? enter image description here
这不行。
@Entity
@Table(name="Category")
public class Category {
@Id
@GeneratedValue
private int idCategory;
private String name;
@ManyToMany(fetch = FetchType.EAGER)
@JoinTable(name = "Product_Category", joinColumns = {
@JoinColumn(name = "Category_idCategory", nullable = false, updatable = false) },
inverseJoinColumns = { @JoinColumn(name = "Product_idProduct",
nullable = false, updatable = false) })
private Set <Product> product;
谢谢你的回应。你能告诉我我到底该怎么办? – Jack937
将上面的注释复制到您的代码中,然后复制到类别实体的集合。然后更改'@ JoinTable'的名称以反映表名。在'@ JoinColumns'中,更改名称字段以反映连接表中列的名称。 –
这不行。 – Jack937