一.丟擲問題
什麼是多對一:
如何在查詢訂單的時候帶出使用者表中的使用者名稱?
二.解決方式
1.單查詢屬性對映:
publicclass
order
<2.單查詢型別對映:select
id="getbyid"
resulttype
="order"
>
select o.*,u.account useraccount from mall_order o,mall_user u where o.id=# and o.userid=u.id
select
>
public在查詢時,查詢兩張表資訊,使用resultmap,對映對應屬性class
order
<3.巢狀查詢(查訂單《多的一方》中巢狀使用者資訊查詢) 關聯對映select
id="getbyid"
resultmap
="orderresultmap"
>
select o.*,u.account from mall_order o,mall_user u where o.id=# and
o.userid=u.id
select
>
<
resultmap
id="orderresultmap"
type
="order"
>
<
id column
="id"
property
="id"
/>
<
result
column
="userid"
property
="userid"
/>
<
result
column
="orderno"
property
="orderno"
/>
<
result
column
="orderdate"
property
="orderdate"
/>
<
result
column
="consignee"
property
="consignee"
/>
<
result
column
="phonenum"
property
="phonenum"
/>
<
result
column
="account"
property
="user.account"
/>
resultmap
>
<select
id="getbyid"
resulttype
="user"
>
select * from mall_user where id=#
select
>
publicclass
order
<select
id="getorders"
resultmap
="orderresultmap"
>
select * from mall_order;
select
>
<
resultmap
id="orderresultmap"
type
="order"
>
<
id column
="id"
property
="id"
/>
<
result
column
="userid"
property
="userid"
/>
<
result
column
="orderno"
property
="orderno"
/>
<
association
property
="user"
column
="userid"
fetchtype
="lazy"
select
="com.woniu.mall.dao.userdao.getbyid"
/>
resultmap
>
mybais 多對一查詢
準備階段 多個學生對應乙個老師 1.建表 2.編寫實體類 package com.lv.pojo import lombok.data data public class student package com.lv.pojo import lombok.data data public class...
Mybatis的多表(一對一)查詢
mybatis的多表 一對一 查詢 示例 使用者和賬戶 乙個使用者可以有多個賬戶 一對多 乙個賬戶只能屬於乙個使用者 一對一 解決辦法 建立兩張表 使用者表,賬戶表 讓使用者表和賬戶表之間具備一對多的關係 需要使用外來鍵在賬戶中新增。建立兩個實體類 使用者實體類和賬戶實體類 讓使用者的實體類和賬戶的...
使用mybatis的一對多查詢
在寫 的時候經常有這種需求,乙個訂單對應多個商品,需要對訂單以及商品進行分頁模糊搜尋,在首頁展示多個滿足要求的訂單,並且同時展示出訂單中的商品資訊,此時需要返回乙個list,並且list中物件是一對多的關係,就是對1對多種的多進行分頁.這個時候的思路.我們以一為主表,多為副表進行分析 1.實現 使用...