生活随笔
收集整理的這篇文章主要介紹了
mybaits中resultMap实现多对多查询映射
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
<!-- 多對多查詢:一個用戶創建多個訂單,一個訂單包含多個訂單明細,一個訂單明細包含一個商品 --><resultMap type="com.hbut.po.User" id="findUserItemsMap"><!-- 一個用戶 --><id column="usersId" property="id"/><result column="username" property="username"/><result column="sex" property="sex"/><result column="address" property="address"/><!-- 多個訂單 --><collection property="orderList" ofType="com.hbut.po.Orders"><id column="id" property="id"/><result column="user_id" property="userId"/><result column="number" property="number"/><result column="createtime" property="createtime"/><result column="note" property="note"/><!-- 多個明細 --><collection property="orders" ofType="com.hbut.po.Orderdetail"><id column="orderdetail_id" property="id"/><result column="orders_id" property="ordersId"/><result column="items_id" property="itemsId"/><result column="items_num" property="itemsNum"/><!--一個訂單明細包含一個商品--><association property="items" javaType="com.hbut.po.Items"><result column="name" property="name"/><result column="price" property="price"/><result column="detail" property="detail"/></association></collection></collection></resultMap><select id="findUserItems" resultMap="findUserItemsMap">SELECT orders.*,`user`.id usersId,USER.username,USER.sex,USER.address,orderdetail.id orderdetail_id,orderdetail.items_id,orderdetail.items_num,orderdetail.orders_id,items.name,items.price,items.detailFROMorders,USER,orderdetail,itemsWHERE orders.user_id = user.id AND orderdetail.orders_id=orders.id AND orderdetail.items_id=items.id</select>
User類:
//屬性名和數據庫表的字段對應
private int id;
private String username;// 用戶姓名
private String sex;// 性別
private Date birthday;// 生日
private String address;// 地址
//一個用戶可以創建多個訂單
private List<Orders> orderList;
Orders類:
? ?private Integer id;
? ? private Integer userId;
? ? private String number;
? ? private Date createtime;
? ? private String note;
? ? //一個訂單包含多個訂單明細
? ? private List<Orderdetail> orders;
Orderdetail類
? ? private Integer id;
? ? private Integer ordersId;
? ? private Integer itemsId;
? ? private Integer itemsNum;
? //一個訂單明細對應一個商品
? ? private Items items;
Items類(商品類)
? ? private Integer id;
? ? private String name;
? ? private Float price;
? ? private String pic;
? ? private Date createtime;
? ? private String detail;
運行結果:一個用戶創建的多個訂單,每個訂單包含多個訂單明細,每個訂單明細包含一個商品
總結
以上是生活随笔為你收集整理的mybaits中resultMap实现多对多查询映射的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。