Mybatis引數傳遞規則

2021-10-17 11:41:31 字數 1240 閱讀 5261

1.單值傳參

void

deleteobject

(string name)

mybatis的原始碼中要求單值傳參,取值時通過下標的方式取值(取值的引數名可以隨意)

2.多值傳參

void

deleteobject

(string name,string ***)

mybatis高版本的原始碼中做了規定,自動將多值轉換成單值(封裝成map集合,k-v結構),上例中封裝為map(「name」,name),map(「***」,***)

3.在對映配置檔案中,根據引數傳遞格式,採用對應的方式變數

1).單值傳參 array型別 collection=「array」

list型別 collection=「list」

("delete"

)public sysresult deleteitem

(long[

] ids)

"deleteitem"

>

delete from tb_item where id in (

collection

="array"

item

="id"

separator

=","

>

#foreach

>

)delete

>

2).單值傳參 map集合 collection=「map中的key」(""

)public sysresult reshelfitem

(@pathvariable integer status,

/*@param("ids")*/ long[

] ids)

"updateitemstatus"

>

update tb_item set status=#,updated=now() where id in (

collection

="ids"

item

="id"

separator

=","

>

#foreach

>

)update

>

Mybatis傳遞引數規則

public user selectuser string name,string area 其中 代表第乙個引數,代表第二個引數,依次類推 或者public user selectuser param name string name,param area string area 引數為list型...

MyBatis的引數傳遞

select from student order by limit 介面 studentdao 檔案 預設引數傳遞 public listfind string sort,string dir,int start,int limit 註解方式引數傳遞 public listfind2 param ...

mybatis傳遞多個引數

據我目前接觸到的傳多個引數的方案有三種。dao層的函式方法 1 publicuserselectuser stringname,string area 1 2 3 selectid selectuser resultmap baseresultmap select fromuser user twh...