mybatis返回key value map集合方式
更新時間:2022年01月23日 09:34:56 作者:HQZYX
這篇文章主要介紹了mybatis返回key value map集合方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
mybatis返回key value map集合
XML:文件
<select id="getData" resultMap="userMap" > ? ? SELECT id,name FROM user ? ? ? ? </select> ? <resultMap id="userMap" type="java.util.Map" > ? ? <result column="id" property="key" jdbcType="VARCHAR" /> ? ? <result column="name" property="value" jdbcType="VARCHAR" /> </resultMap>
Service實現(xiàn)類: namespaceXml根據(jù)自己xml命名取
import org.apache.ibatis.session.SqlSession;
@Autowired
private SqlSession sqlSession;
public Map<String, String> getBasicInformationOfCompanyPersonnel(String status) throws Exception {
Map<String, Object> params = new HashMap<>();
?
? ? params.put("status", status);?
? ? MapResultHandler handler = new MapResultHandler();?
? ? Map result = handler.getMappedResults();?
? ? sqlSession.select("namespaceXml.getData",params,handler);?
? ? return result;
}工具類:
import org.apache.ibatis.session.ResultContext;
import org.apache.ibatis.session.ResultHandler;
public class MapResultHandler implements ResultHandler {?
? ? @SuppressWarnings("rawtypes")
? ? private final Map mappedResults = new HashMap();?
? ? @SuppressWarnings("unchecked")
? ? @Override
? ? public void handleResult(ResultContext context) {
? ? ? ? @SuppressWarnings("rawtypes")
? ? ? ? Map map = (Map) context.getResultObject();
? ? ? ? // xml配置里面的property的值,對應(yīng)的列
? ? ? ? mappedResults.put(map.get("key"), map.get("value"));
? ? }
?
? ? @SuppressWarnings("rawtypes")
? ? public Map getMappedResults() {
? ? ? ? return mappedResults;
? ? }
}mybatis返回map,key為主鍵,value為對象
@MapKey("id")
public Map<String,User> getUserByName(String name);xml中
<select id="getUserByName" resultType = "User">
? ? select * from user where name=#{param1}
</select>以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
java 下執(zhí)行mysql 批量插入的幾種方法及用時
java 下執(zhí)行mysql 批量插入的幾種方法及用時,1000次插入方法的比較。2013-04-04
詳解五種方式讓你在java中讀取properties文件內(nèi)容不再是難題
這篇文章主要介紹了詳解五種方式讓你在java中讀取properties文件內(nèi)容不再是難題 ,非常具有實用價值,需要的朋友可以參考下。2016-12-12
Java11?中基于嵌套關(guān)系的訪問控制優(yōu)化問題
在?Java?語言中,類和接口可以相互嵌套,這種組合之間可以不受限制的彼此訪問,包括訪問彼此的構(gòu)造函數(shù)、字段、方法,接下來通過本文給大家介紹Java11中基于嵌套關(guān)系的訪問控制優(yōu)化問題,感興趣的朋友一起看看吧2022-01-01
關(guān)于java連接池/線程池/內(nèi)存池/進(jìn)程池等匯總分析
這篇文章主要介紹了關(guān)于java連接池/線程池/內(nèi)存池/進(jìn)程池等匯總分析,本文將介紹池技術(shù)的由來、原理、優(yōu)缺點以及常見的池技術(shù)類型,需要的朋友可以參考下2023-04-04
使用XSD校驗Mybatis的SqlMapper配置文件的方法(1)
這篇文章以前面對SqlSessionFactoryBean的重構(gòu)為基礎(chǔ),簡單的介紹了相關(guān)操作知識,然后在給大家分享使用XSD校驗Mybatis的SqlMapper配置文件的方法,感興趣的朋友參考下吧2016-11-11

