【发布时间】:2015-10-07 18:58:37
【问题描述】:
在显示具有一对多关联的项目列表的列表订单时,我遇到了重复行的问题。订单将根据订单中的商品数量重复,而不是每个订单一次。
这是我的代码... 控制器映射
// RETURNS A LIST OF ALL ORDERS IN KITCHEN
@RequestMapping("/orderstatus")
public String showAddresses(Model model) {
List<Orders> deliveryKitchen = ordersService.getDeliveryKitchen();
List<Orders> deliveryOut = ordersService.getDeliveryOut();
List<Orders> insideKitchen = ordersService.getInsideKitchen();
List<Orders> insideOut = ordersService.getInsideOut();
List<Orders> takeoutKitchen = ordersService.getTakeoutKitchen();
model.addAttribute("deliveryKitchen", deliveryKitchen);
model.addAttribute("deliveryOut", deliveryOut);
model.addAttribute("insideKitchen", insideKitchen);
model.addAttribute("insideOut", insideOut);
model.addAttribute("takeoutKitchen", takeoutKitchen);
return "orderstatus";
}
.jsp 的一部分
<div>
Delivery
<table class="orders">
<tr>
<td>Order #</td>
<td>Name</td>
<td>Phone Number</td>
<td>Street</td>
<td>Items</td>
<td>Total</td>
</tr>
<c:forEach var="deliveryKitchen" items="${deliveryKitchen}">
<tr>
<td><c:out value="${deliveryKitchen.idorders}"></c:out></td>
<td><c:out value="${deliveryKitchen.users.name}"></c:out></td>
<td><c:out value="${deliveryKitchen.users.phoneNo}"></c:out></td>
<td><c:out value="${deliveryKitchen.addresses.street1}"></c:out>
<td>
<c:forEach var="insideItems" items="${deliveryKitchen.orderitem}">
<c:out value="${insideItems.items.name}"></c:out>
</c:forEach>
...
what the page shows
Delivery
Order # Name Phone Number Street Items Total
57 Panikos 9172955593 214-04 33rd ave Healthy Wrap Meatlover's Omlette 18.4 Out for Delivery Edit
57 Panikos 9172955593 214-04 33rd ave Healthy Wrap Meatlover's Omlette 18.4 Out for Delivery Edit
59 Jerry 7894578978 2145 fulton Belgian Style Waffle Chicken Salad Two Eggs Tuna Salad Sandwich Chicken Noodle Baja Chicken Macaroni and Cheese (kids) Western Omlette 53.4 Out for Delivery Edit
59 Jerry 7894578978 2145 fulton Belgian Style Waffle Chicken Salad Two Eggs Tuna Salad Sandwich Chicken Noodle Baja Chicken Macaroni and Cheese (kids) Western Omlette 53.4 Out for Delivery Edit
59 Jerry 7894578978 2145 fulton Belgian Style Waffle Chicken Salad Two Eggs Tuna Salad Sandwich Chicken Noodle Baja Chicken Macaroni and Cheese (kids) Western Omlette 53.4 Out for Delivery Edit
59 Jerry 7894578978 2145 fulton Belgian Style Waffle Chicken Salad Two Eggs Tuna Salad Sandwich Chicken Noodle Baja Chicken Macaroni and Cheese (kids) Western Omlette 53.4 Out for Delivery Edit
59 Jerry 7894578978 2145 fulton Belgian Style Waffle Chicken Salad Two Eggs Tuna Salad Sandwich Chicken Noodle Baja Chicken Macaroni and Cheese (kids) Western Omlette 53.4 Out for Delivery Edit
59 Jerry 7894578978 2145 fulton Belgian Style Waffle Chicken Salad Two Eggs Tuna Salad Sandwich Chicken Noodle Baja Chicken Macaroni and Cheese (kids) Western Omlette 53.4 Out for Delivery Edit
59 Jerry 7894578978 2145 fulton Belgian Style Waffle Chicken Salad Two Eggs Tuna Salad Sandwich Chicken Noodle Baja Chicken Macaroni and Cheese (kids) Western Omlette 53.4 Out for Delivery Edit
59 Jerry 7894578978 2145 fulton Belgian Style Waffle Chicken Salad Two Eggs Tuna Salad Sandwich Chicken Noodle Baja Chicken Macaroni and Cheese (kids) Western Omlette 53.4 Out for Delivery Edit
// GET ORDERS BY STATUS
@SuppressWarnings("unchecked")
public List<Orders> getDeliveryKitchen() {
Criteria crit = session().createCriteria(Orders.class);
crit.createCriteria("status", "c");
crit.add(Restrictions.eq("c.idstatus", 2));
return crit.list();
}
【问题讨论】:
-
请展示 DAO 代码或至少展示您如何尝试检索带有 LineItems 的订单(可能是 HQL 或 Criteria)
-
已更新。感谢观看
标签: hibernate spring-mvc jstl