Mybatis中返回Map的實現

2022-10-06 02:27:05 字數 1242 閱讀 8210

在mybatis中,我們通常會像下邊這樣用:

返回乙個結果

user selectone(user user);

程式設計客棧r.entity.user" resulttype="cn.lyn4ever.entity.user">

select id,username,telphone from user where telphone=# and password = #

返回多個結果(其實這個和上邊一樣,只不過是查詢條件的控制而已)

list selectlist(user user);

select id,username,telphone from user

我們只要將上邊的resulttype改為j**a.util.hashmap,這會有生成下邊這樣

map selectlist(user user);

www.cppcns.comp">

select id,username,telphone from user where telphone=# and password = #

上這結果就是說,以user類的屬性名為key,屬性值為value。

當然,也可以查出來多條記錄,將這個map放進list中

list selectlist(user user);

程式設計客棧etertype="cn.lyn4ever.entity.user" resulttype="j**a.util.hashmap">

select id,username,telphone from user

但是有時候我們想要這種結果,怎麼辦呢?

}也就是我們要自定義乙個map,這樣的話,有以下兩種解決方法:

@mapkey("id")

map getuserinmap();

程式設計客棧etertype="cn.lyn4ever.entity.user" resulttype="user">

select id,username,telphone from user where t程式設計客棧elphone=# and password = #

這個@mapkey的value寫的就是user物件的乙個屬性

hashmap getuserinmap();

select id as 'key', * as 'value', id,username,telphone from user where telphone=# and password = #

當然以上這兩種方法,如果查出來是多條的話也會是list的形式

Mybatis的返回值是Map

select u.id,i.user name,u.user mobile,r.region id,r.region name,u.user email,u.create date from base login user u,base login user info i,base region r...

MyBatis查詢返回Map型別資料

今天在交通費計算交易中,需要查詢全部base地的交通費,需要返回map集合。然後經查資料,實現過程如下 select base,traffic fare from t ead trafficbase 2.dao中的成員方法 public list getbasemap 3.對返回list的處理 pr...

MyBatis查詢返回Map型別資料

2.dao中的成員方法 public list getbasemap 3.對返回list的處理 private mapgetbasemap logger logger else if traffic fare equals entry.getkey basemap.put base,fare ret...