Mybatis查詢返回Map<String,Object>類型實例詳解
這篇我們來說一下Mybatis的查詢結(jié)果返回Map類型。
首先我們在企業(yè)開發(fā)中是很少使用到Map返回類型的,很多都是直接返回一個對象實體。尤其是苞米豆出了MP框架之后,XML都是很少寫的。
那么在什么情況下需要使用Map來作為返回的結(jié)果類型呢?
案例:有一個模塊A和模塊B,A模塊的POM依賴引入了B模塊,A模塊可以直接使用B模塊的實體,但是B模塊使用不到A模塊的實體,如果在B模塊POM中引入A模塊的依賴,那么在運行時會出現(xiàn)依賴循環(huán)錯誤,這時候就需要自己寫SQL來返回Map類型了,因為返回不了另一個實體,所以需要定義 Map集合來返回
第一種:返回值為Map<string,Object>類型,但是只能接收一條數(shù)據(jù),數(shù)據(jù)超過一條會報錯。
如下
第二種:List<Map<String,Object>>類型,返回的是一個集合,可以接收多條數(shù)據(jù)
第三種:Map<String,Map<String,Object>>類型,返回的是一個KV,DAO層需要添加@MapKey注解,K為注解的值(注解上的值表示數(shù)據(jù)庫某字段,字段必須保證唯一,例如主鍵或唯一索引的字段),V代表查詢出來的數(shù)據(jù)
我們首先演示一下第一種:Map<String,Object>類型
package com.ywt.springboot.mapper; import java.util.Map; /** * @author pc */ public interface StudentMapper { //查詢所有的學(xué)生 Map<String,Object> findDataToMap(Integer id); }
Mapper.xml
測試一下
第二種List<Map<String,Object>>
Mapper層
Mapper.xml
測試一下
第三種:Map<String, Map<String,Object> >
Mapper層
Mapper.xml
測試結(jié)果
總結(jié)
到此這篇關(guān)于Mybatis查詢返回Map<String,Object>類型的文章就介紹到這了,更多相關(guān)Mybatis查詢返回Map<String,Object>內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Caused by: java.lang.ClassNotFoundException: org.objectweb.a
這篇文章主要介紹了Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type異常,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07SpringBoot整合redis+lettuce的方法詳解
這篇文章主要介紹了SpringBoot整合redis+lettuce的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-08-08RxJava中map和flatMap的用法區(qū)別源碼解析
這篇文章主要為大家介紹了RxJava中map和flatMap的用法區(qū)別源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-09-09spring?boot?使用Mybatis-plus查詢方法解析
這篇文章主要介紹了spring?boot?使用Mybatis-plus查詢方法解析,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-09-09