Мой класс Категория должен иметь несколько продуктов, мне нужно, чтобы показать продукты, когда вы нажимаете на категории в СПЯ ... Я пробовал так:Spring отображение рамки отношения
@Entity
public class Categorie {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int categorieId;
private String categorieName;
@OneToMany()
@JoinColumn(name = "CategorieNr")
private Set<Product> products;
Мой класс продукта :
@Entity
@Table(name = "CentricProduct")
public class Product implements Serializable{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int productId;
private int calories, productRow;
private String description;
private double price;
@Override
public boolean equals(Object object) {
if (!(object instanceof Product)) {
return false;
}
Product other = (Product) object;
return description.equals(other.description);
}
@Override
public int hashCode() {
return description.hashCode();
}
Это хранилище я использую, чтобы получить categorys с их продуктами:
@Repository
public class CategoryRepository implements ICategoryRepository
{
@PersistenceContext
private EntityManager em;
public CategoryRepository() {
}
public CategoryRepository(EntityManager em)
{
this.em = em;
}
public void setEntityManager(EntityManager e)
{
this.em = e;
}
@Transactional(readOnly = true)
@Override
public List<Categorie> findAll()
{
CriteriaQuery cq = em.getCriteriaBuilder().createQuery();
cq.select(cq.from(Categorie.class));
return em.createQuery(cq).getResultList();
}
в мой JSP:
<h1 class="listtitle">Productenlijst</h1>
<div id="leftlist" class="list" >
<c:forEach items="${products}" var="item" >
<form:form method="POST" action="shoppinglist.htm" modelAttribute="products">
<input type="submit" value= "${item.categorieName}" class="productlistbtn" alt="Submit" input path="${item}" >
</form:form>
</c:forEach>
</div>
В заголовке нет необходимости добавлять основной тег. –