mybatisPlus返回Map類型的集合
更新時間:2023年03月17日 10:07:35 作者:林卓淇
本文主要介紹了mybatisPlus返回Map類型的集合,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
1、自定義實現(xiàn)該類
package com.linmain.dict.handle;
import org.apache.ibatis.session.ResultContext;
import org.apache.ibatis.session.ResultHandler;
import java.util.HashMap;
import java.util.Map;
/**
?* @Author linzhuoqi
?* @Date 2023/3/9
?* @Eamil 1580752420@qq.com
?* @Version
?* @Description ?新建一個mappedResults,每次感應(yīng)到數(shù)據(jù)進(jìn)來,處理下然后塞進(jìn)去。
?*/
@SuppressWarnings("all")
public class MapResultHandle<K, V> implements ResultHandler<Map<K, V>> {
? ? private final Map<K,V> mappedResults = new HashMap<>();
? ??
? ? @Override
? ? public void handleResult(ResultContext<? extends Map<K, V>> resultContext) {
? ? ? ? Map map = (Map) resultContext.getResultObject();
? ? ? ? //key和value是xml中映射的
? ? ? ? mappedResults.put((K)map.get("key"), (V)map.get("value"));
? ? }
? ? public Map<K, V> getMappedResults() {
? ? ? ? return mappedResults;
? ? }
}2、在抽象dao層書寫返回map集合類型的方法
Map<String,String> pageByTypeId(Serializable typeId);
3、在XXXDao.xml文件中書寫sql語句和resultMap類型
?<!-- result類型 -->
?<resultMap id="mapResult" type="java.util.HashMap">
? ? ?<result property="key" column="data_value"/>
? ? ?<result property="value" column="data_name"/>
?</resultMap>
?<!-- 上述方法的sql語句 -->
?<select id="pageByTypeId" resultMap="mapResult">
? ? ?select data_name, data_value
? ? ?from dict_data
? ? ?where dict_id = #{typeId}
? ? ? ?and is_delete = '0';
?</select>4、如何使用
?@Override
?public Map<String,String> getAllByTypeId(Serializable typeId) {
? ? ?//獲取一個sqlsession對象,true:自動提交
? ? ?SqlSession sqlSession = sqlSessionFactory.openSession(true);
? ? ?//創(chuàng)建一個結(jié)果處理器
? ? ?MapResultHandle<String, String> mapResultHandle = new MapResultHandle<>();
? ? ?//進(jìn)行數(shù)據(jù)查詢和結(jié)果封裝
? ? ?sqlSession.select("com.linmain.dict.dao.DictDataDao.pageByTypeId", typeId, mapResultHandle);
? ? ?Map<String, String> mappedResults = mapResultHandle.getMappedResults();
? ? ?return mappedResults;
? ? }到此這篇關(guān)于mybatisPlus返回Map類型的集合的文章就介紹到這了,更多相關(guān)mybatisPlus返回Map類型的集合內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java線程編程中Thread類的基礎(chǔ)學(xué)習(xí)教程
這篇文章主要介紹了Java線程編程中Thread類的基礎(chǔ)學(xué)習(xí)教程,Thread類包含諸多操作線程的方法,非常重要,需要的朋友可以參考下2015-12-12
springboot+mybatis配置控制臺打印sql日志的方法
這篇文章主要介紹了springboot+mybatis配置控制臺打印sql日志的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
Java實現(xiàn)駝峰與下劃線互轉(zhuǎn)的方法
這篇文章主要為大家詳細(xì)介紹了Java實現(xiàn)駝峰與下劃線互轉(zhuǎn)的方法,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-04-04
Spring事務(wù)管理下synchronized鎖失效問題的解決方法
這篇文章主要給大家介紹了關(guān)于Spring事務(wù)管理下synchronized鎖失效問題的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用Spring具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2022-03-03

