Mybatis查找返回Map,List集合類型的數(shù)據(jù)方式
Mybatis查找返回Map,List集合類型的數(shù)據(jù)
一、查找返回Bean對(duì)象的List集合
基本與返回Bean對(duì)象沒什么區(qū)別,resultType依然為Bean對(duì)象的全類名,只是接口中的方法類型要進(jìn)行修改
public List<Employee> getEmpListByEmail(String email);
二、查詢返回Bean對(duì)象的Map集合
同樣,resultType依然為Bean對(duì)象的全類名,只是接口中的方法類型要進(jìn)行修改,添加注解。
@MapKey("Bean對(duì)象屬性名"):指定Map的鍵為Bean對(duì)象的哪個(gè)屬性,一般設(shè)置為主鍵,因?yàn)镸ap不能存重復(fù)的鍵。
@MapKey("id")
public Map<Integer,Employee> getEmpMapByEmail(String email);
三、查詢返回單條紀(jì)錄的Map集合
即當(dāng)前記錄以鍵為列名,值為列屬性存入map(查詢到的記錄一定要只有一條,否則報(bào)錯(cuò))
注意,resultType需要設(shè)置為map,接口中方法類型需要修改,Map的鍵默認(rèn)為列名。
public Map<String, Object> getEmpByEmail(String email);
mybatis 查詢返回List集合、map集合、List<Map>集合
返回map類型
1. xml中
<select id="selectUser" resultType="java.util.HashMap"> </select>
2.Dao接口中
Map<String,Object> selectUser();
這種方式SQL只能返回一行記錄或者沒有返回,如果返回多行記錄,則程序報(bào)錯(cuò)。
返回List<String>類型
3. xml中
<select id="selectUser" resultType="java.lang.String"> </select>
2.Dao接口中
List<String> selectUser();
這種方式可以返回多行記錄,但是每行記錄只有指定的一列數(shù)據(jù)。
返回List<Map>類型
1.xml中
<select id="selectUser" resultType="java.util.HashMap"> </select>
2.Dao接口中
List<Map<String,Object>> selectUser ();
這種方式可以返回指定的多行多列的記錄。
返回List<指定對(duì)象>類型
xml中:
<resultMap id="baseResult" type="com.XXX.BscntrUnitInfoResult(對(duì)應(yīng)對(duì)象)"> <result column="unit_id" property="unitId" jdbcType="INTEGER" (字段映射關(guān)系)/> <result column="unit_name" property="unitName" jdbcType="VARCHAR" /> <result column="unit_type" property="unitType" jdbcType="INTEGER" /> <result column="super_unit_id" property="superUnitId" jdbcType="INTEGER" /> <result column="gis_start_x" property="gisStartX" jdbcType="FLOAT" /> <result column="ext_top" property="extTop" jdbcType="DOUBLE" /> </resultMap> <select id="getBscntrUnitInfoListByName" resultMap="baseResult"> </select>
Dao接口中:
public List<BscntrUnitInfoResult> getBscntrUnitInfoListByName();
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
spring boot @ResponseBody轉(zhuǎn)換JSON 時(shí) Date 類型處理方法【兩種方法】
這篇文章主要介紹了spring boot @ResponseBody轉(zhuǎn)換JSON 時(shí) Date 類型處理方法,主要給大家介紹Jackson和FastJson兩種方式,每一種方法給大家介紹的都非常詳細(xì),需要的朋友可以參考下2018-08-08
關(guān)于json序列化(javaBean轉(zhuǎn)Json的細(xì)節(jié)處理)
這篇文章主要介紹了關(guān)于json序列化(javaBean轉(zhuǎn)Json的細(xì)節(jié)處理),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。2022-03-03
Intellij Mybatis連接Mysql數(shù)據(jù)庫
最近在搞android的項(xiàng)目,在開發(fā)過程中遇到了好多問題,今天小編給大家說下mybatis連接MySQL數(shù)據(jù)庫的方法,感興趣的朋友跟著小編一起學(xué)習(xí)吧2016-10-10
關(guān)于SpringMVC在Controller層方法的參數(shù)解析詳解
在SpringMVC中,控制器Controller負(fù)責(zé)處理由DispatcherServlet分發(fā)的請求,下面這篇文章主要給大家介紹了關(guān)于SpringMVC在Controller層方法的參數(shù)解析的相關(guān)資料,需要的朋友可以參考下2021-12-12
struts2 validation.xml 驗(yàn)證規(guī)則代碼解析
這篇文章主要介紹了struts2 validation.xml 驗(yàn)證規(guī)則代碼解析,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01

