mybatis分步查詢與延遲載入

2022-05-10 08:34:48 字數 1620 閱讀 8610

1.分步查詢

先查詢使用者的部門

<

resultmap

id="rmap"

type

="com.yunqing.mybatis.bean.department"

>

<

id column

="id"

property

="id"

/>

<

result

column

="department"

property

="departmentname"

/>

resultmap

>

<

select

id="getdepbyidstep2"

resultmap

="rmap"

>

select id,department from t_dep where id=#

select

>

再通過查使用者查出部門

<

resultmap

id="rmap"

type

="com.yunqing.mybatis.bean.user"

>

<

id column

="id"

property

="id"

/>

<

result

column

="name"

property

="name"

/>

<

result

column

="age"

property

="age"

<

association

property

="dep"

select

column

="dep_id"

>

association

>

resultmap

>

<

select

id="getuserbyidstep1"

resultmap

="rmap"

>

select * from t_user where id=#

select

>

2.延遲載入

分部查詢的好處是可以延遲載入,只有在需要時才查詢部門,不需要時可以不用查詢部門。

需要在分部查詢的基礎上加上兩個設定。

<

settings

>

<

setting

name

="lazyloadingenabled"

value

="true"

/>

<

setting

name

="aggressivelazyloading"

value

="false"

/>

settings

>

resultMap3 關聯查詢 分步查詢 延遲載入

分步查詢時可以用延遲載入 employee 中dept 每次查詢employee物件的時候,都將一起查詢出來,使用延遲載入,部門資訊在我們使用時候再去查詢,只需在分段查詢的基礎上加上兩個配置。1 在mybatis config.xml中settings標籤中新增 來開啟延遲載入 lazyloadin...

mybatis的級聯屬性 聯合 分步查詢

在說級聯屬性查詢之前,先把需要的表和資料建立好。建立員工表 create table tbl employee id int 11 auto increment primary key,last name varchar 25 gender char 1 email varchar 255 建立部門...

Mybatis延遲載入和查詢快取

在全域性配置引數設定開啟延遲載入總開關 name lazyloadingenabled value true name aggressivelazyloading value false settings 設定項 描述允許值 預設值lazyloadingenabled 全域性性設定懶載入。如果設為 ...