版权声明:本文为博主原创文章,发现错误请谅解并提醒博主。 https://blog.csdn.net/qq_36430463/article/details/79086183
上代码
//简单订单实体
public class Order {
private String orderid;
private String price;
private List<OrderGoods> goods;
}
//简单订单包含商品实体
public class OrderGoods{
private String orderid;
private String goodsCode;
private Integer buyNUM;
private String goodsNAME;
}
//mybatis.xml文件
<select id="searchOrdersAll" parameterType="com.entity.vo.OrderSearch" resultMap="orderMap">
SELECT * FROM
Order
LEFT JOIN Order_Goods
ON Order.orderid=Order_Goods.orderid
LIMIT 0,20
</select>
<resultMap type="com.entity.Order" id="orderMap">
<result column="ORDER_ID" property="orderid"/>
<result column="PRICE" property="price"/>
<collection property="goods" ofType="com.entity.OrderGoods" resultMap="ordergoodsMap" />
</resultMap>
<resultMap type="com.entity.OrderGoods" id="ordergoodsMap">
<result column="ORDER_ID" property="orderid"/>
<result column="ORDER_ID" property="goodsCode"/>
<result column="BUY_NUM" property="buyNUM"/>
<result column="GOODS_NAME" property="goodsNAME"/>
</resultMap>
返回结果为List<Order>
今天做订单优化发现代码先返回订单,在根据订单ID去查询订单包含商品,这样在查询大数量时明显变慢,处理方法一就是上边方法,方法二就是把先查询订单并返返回页面显示,查看订单详情时在查询选中订单详情,累死懒加载。因项目页面要直接显示所有订单及详情,所以我用的方法一。