Mybatis返回多個(gè)結(jié)果集的實(shí)現(xiàn)示例
本文介紹一個(gè)在 Mybatis 中不常見的操作,但是可能有些朋友剛好需要用到,Mybatis 如何實(shí)現(xiàn)返回多個(gè)結(jié)果集
什么情況會(huì)返回多個(gè)結(jié)果集:
- 存儲(chǔ)過程
- 多個(gè) select 語句
具體過程如下(作者實(shí)測(cè):跟著觀戰(zhàn)就完事了):
1、首先你要在 url 連接中開啟『多結(jié)果集查詢』allowMultiQueries=true
url: jdbc:mysql://localhost:3306/football?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&rewriteBatchedStatements=true&AllowPublicKeyRetrieval=True&allowMultiQueries=true
2、Mybatis 的 mapper 層代碼:
List<List<?>> testMultiQueries();
因?yàn)橛卸鄠€(gè)結(jié)果,結(jié)果集的類型是不一樣的,所以用泛型,返回類型定義為 List<List<?>>
3、xml 文件代碼:
<!-- 因?yàn)槲液竺嬗貌坏降谝粋€(gè)結(jié)果集,所以隨便定義個(gè) Map 來接收 -->
<resultMap id="tempResultMap" type="java.util.Map">
</resultMap>
<!--
1、在 resultMap 指定多個(gè)結(jié)果集映射
2、BaseResultMap 是我要使用的結(jié)果集映射,沒貼出來
-->
<select id="testMultiQueries" resultMap="tempResultMap,BaseResultMap">
-- 第一個(gè) select
SELECT @min_price:=MIN(hafu) as minPrice, @max_price:=MAX(hafu) as maxPrice FROM match_info;
-- 第二個(gè) select
SELECT * FROM match_info WHERE hafu=@min_price OR hafu=@max_price;
</select>
備注:
1、定義了 2 個(gè) resultMap 結(jié)果集。第一個(gè)結(jié)果集tempResultMap后面用不到隨便定義一個(gè),第二個(gè)結(jié)果集BaseResultMap映射業(yè)務(wù)類
2、定義了 2 個(gè) select 語句。會(huì)被一起發(fā)送給 mysql 服務(wù)器,服務(wù)器執(zhí)行后會(huì)返回 2 個(gè)結(jié)果集,mybatis 框架完成 2 個(gè)結(jié)果集的映射
4、取回多結(jié)果集截圖

到此這篇關(guān)于Mybatis返回多個(gè)結(jié)果集的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)Mybatis返回多結(jié)果集內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
如何解決使用restTemplate進(jìn)行feign調(diào)用new HttpEntity<>報(bào)錯(cuò)問題
這篇文章主要介紹了如何解決使用restTemplate進(jìn)行feign調(diào)用new HttpEntity<>報(bào)錯(cuò)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-06-06
Java 定時(shí)器的多種實(shí)現(xiàn)方式
本文介紹了Java中定時(shí)器的多種實(shí)現(xiàn)方式,有此需求的朋友可以根據(jù)實(shí)際選擇適合自己的方式2021-06-06
簡(jiǎn)易版SpringBoot自定義模擬實(shí)現(xiàn)
SpringBoot作為目前最流行的框架之一,極大地提高了開發(fā)效率和降低了學(xué)習(xí)成本,使得開發(fā)人員能夠更專注于業(yè)務(wù)邏輯的實(shí)現(xiàn),而無需過多關(guān)注底層框架的配置和集成,本文模擬實(shí)現(xiàn)簡(jiǎn)易版SpringBoot2024-01-01
Java?Web開發(fā)常用框架Spring?MVC?Struts示例解析
這篇文章主要為大家介紹了Java?Web開發(fā)常用框架Spring?MVC?Struts示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06

