mybatisPlus返回Map類型的集合
更新時間:2023年03月17日 10:07:35 作者:林卓淇
本文主要介紹了mybatisPlus返回Map類型的集合,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
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,每次感應到數據進來,處理下然后塞進去。
?*/
@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)建一個結果處理器
? ? ?MapResultHandle<String, String> mapResultHandle = new MapResultHandle<>();
? ? ?//進行數據查詢和結果封裝
? ? ?sqlSession.select("com.linmain.dict.dao.DictDataDao.pageByTypeId", typeId, mapResultHandle);
? ? ?Map<String, String> mappedResults = mapResultHandle.getMappedResults();
? ? ?return mappedResults;
? ? }到此這篇關于mybatisPlus返回Map類型的集合的文章就介紹到這了,更多相關mybatisPlus返回Map類型的集合內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
詳解springboot?springsecuroty中的注銷和權限控制問題
這篇文章主要介紹了springboot-springsecuroty?注銷和權限控制,賬戶注銷需要在SecurityConfig中加入開啟注銷功能的代碼,權限控制要導入springsecurity和thymeleaf的整合依賴,本文通過實例代碼給大家介紹的非常詳細,需要的朋友參考下吧2022-03-03
Java反射機制,反射相關API,反射API使用方式(反射獲取實體類字段名和注解值)
這篇文章主要介紹了Java反射機制,反射相關API,反射API使用方式(反射獲取實體類字段名和注解值),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-07-07
Java鏈表(Linked List)基本原理與實現(xiàn)方法入門示例
這篇文章主要介紹了Java鏈表(Linked List)基本原理與實現(xiàn)方法,結合實例形式分析了Java鏈表(Linked List)的功能、原理、實現(xiàn)方法與操作注意事項,需要的朋友可以參考下2020-03-03

