Mybatis的mapper返回map结果集(超详细讲解)[通俗易懂]
2023-06-13 09:14:50 时间
通过@MapKey指定map的key值
1.在接口中写方法
/** * @author : xjszsd * @date : 2021-12-13 16:20 */
public interface IAccountDao {
//返回一条记录的map;key就是列名,值就是对应的值
Map<String,Object> selectAll(Integer id);
/** * 此处若将map的key的类型改为其他类型,不影响@MapKey给map的key赋值 * @return */
@MapKey("name")//指定数据库中id字段作为map的key
Map<String,Map<String,Object>> select();
}
2.在映射文件xml配置方法
<!-- Map<String,Object> selectAll(Integer id); -->
<select id="selectAll" parameterType="Integer" resultType="java.util.Map">
select id , money from account where id=#{id}
</select>
<!-- Map<String,Map<String,Object>> select(); -->
<select id="select" resultType="java.util.Map">
select id,name,money from account
</select>
3.在junit方法里进行测试
3.1 准备工作
@Before
public void init() throws IOException {
//1.读取配置文件
in = Resources.getResourceAsStream("SqlMapConfig.xml");
//2.创建SqlSessionFactory工厂
SqlSessionFactoryBuilder builder=new SqlSessionFactoryBuilder();
factory=builder.build(in);
//3.使用工厂生产SqlSession对象
session= factory.openSession();
}
@After
public void after() throws IOException {
session.close();
in.close();
}
3.2 map的value为java类
@Test
public void selectTest(){
IAccountDao mapper = session.getMapper(IAccountDao.class);
Map<String, Object> map = mapper.selectAll(1);
System.out.println(map);
}
结果:
3.3 map的value为map类
@Test
public void selectTest2(){
IAccountDao mapper = session.getMapper(IAccountDao.class);
Map<String, Map<String, Object>> map = mapper.select();
System.out.println(map);
}
结果:
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/186021.html原文链接:https://javaforall.cn
相关文章
- scala中map与flatMap浅析
- java 把对象转成map_Java对象转换成Map[通俗易懂]
- 深入理解mybatis原理(五) MyBatis缓存机制的设计与实现
- java map转json字符_Map转JSON字符串
- 大话图解golang map源码详解
- Java Map集合的详解「建议收藏」
- 深度学习-目标检测评估指标P-R曲线、AP、mAP[通俗易懂]
- js中通过map的value找key
- MyBatis——【入门级】简单了解myBatis
- List转map的写法
- string转jsonstring_java json转map
- MyBatis框架:第六章:mybatis的核心配置
- 理解目标检测中的mAP与F1 Score
- mybatis返回值为map类型时怎么处理_构造函数不能有返回类型
- fastjson把map转json_fastjson转list对象
- java map是有序的吗_java中map遍历
- 哈理工 oj 2122 旅行(map + 最短路dij算法)
- Java集合类: Set、List、Map、Queue使用场景梳理详解编程语言
- go 实现struct转map详解编程语言
- Oracle 视图 TABLE_PRIVILEGE_MAP 官方解释,作用,如何使用详细说明
- 使用Redis存储Map结构数据(redis存储map)
- MyBatis与Oracle存储过程互通:简化开发,提高效率(mybatis调用oracle存储过程)
- MySQL中使用Map作为参数的实现方法(mysql中map做参数)
- 从Redis中取出Map一步搞定(从redis中取map)
- 将Map存入Redis一步一步解决方案(将map存到redis中)
- Oracle Map映射从实施到实现(oracle map映射)
- 科学上网如何使用Oracle MAP(oracle map使用)
- 学会调整Redis中Map容量的设置(redis设置map大小)