private List<OrderVo> assembleOrderVoList(List<Order> orderList,Integer userId){
List<OrderVo> orderVoList = Lists.newArrayList();
for(Order order : orderList){
List<OrderItem> orderItemList = Lists.newArrayList();//这一块每次循环都会创建对象,对于前台用户来说,可能订单项不是太多,没太大影响,可是针对于后台管理员的查询,那么它是有所有用户订单项,会不会内存泄漏?我也只是根据我的浅显知识分析,也可能不对,请老师帮我说明一下,谢谢
if(userId == null){
//todo 管理员查询的时候 不需要传userId
orderItemList = orderItemMapper.getByOrderNo(order.getOrderNo());
}else{
orderItemList = orderItemMapper.getByOrderNoUserId(order.getOrderNo(),userId);
}
OrderVo orderVo = assembleOrderVo(order,orderItemList);
orderVoList.add(orderVo);
}
return orderVoList;
}