layui java查询一个对象包含多个子对象

本文介绍了在layui结合Java环境下,如何处理一个订单包含多个商品的情况。通过在订单实体类中使用OrderDetail集合,servlet传递数据到界面层,并在前端使用layui-table进行展示,确保通过pid与id的匹配正确显示每个订单的商品详情。

一个订单有时会有多个商品,对于这种情况,就需要查询多个子对象,以下是在layui servlet中的用法
1.显示结果
在这里插入图片描述以上为一个订单对应两个商品
2.在订单实体类(Order)中传入订单商品详情(OrderDetail)的集合

private List<OrderDetail> orderDetails;
public List<OrderDetail> getOrderDetails() {
		try {
			orderDetails = OrderDetailDao.findByPid(id);
		}catch(Exception e) {
			e.printStackTrace();
		}
		return orderDetails;
	}
	public void setOrderDetails(List<OrderDetail> orderDetails) {
		this.orderDetails = orderDetails;
	}

3.在servlet返回界面层的时候带上订单商品详情的list

				List<OrderDetail> dlist=OrderDetailDao.selectAll();
				request.setAttribute("list", dlist);
				
				System.out.print(dlist);
				request.getRequestDispatcher("/WEB-INF/jsp/sys/order_allorder.jsp").forward(request, response);

4.界面层处理(pid为OrderDetail表的外键 对应Order表的id主键),首先要判断id和pid,必须相等才可拿出值,否则拿到的是整个集合

在这里插入图片描述因为商品要显示多个字段,所以在layui-table里面的用法如上,需要用一个id标识,自定义样式

<script type="text/html" id="product">

			<c:forEach items="${list}" var="item">	
				{{#  if(d.id == ${item.pid}){ }} 
					<img style="display: inline-block; width:60px; height:60px;" src= ${item.logo}>
					<span> ${item.title}<span/>	
				{{#  } else{ }}
        		  <span><span/>	
				{{#  } }}

 			</c:forEach>	
        </script> 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值