返回Map,Mybatis配置如下 :

  1. <select id="getCountyHashMap" resultType="java.util.HashMap">
  2. select name,id from
  3. tsql_test_region where
  4. id=#{id}
  5. </select>

ServiceImpl如下 :

  1. public Map<String, Long> getCountyHashMap(long id) {
  2. Map<String, Object> regionMap = regionInfoMapper.getCountyHashMap(id);
  3. Map<String, Long> resultMap = new HashMap<String, Long>();
  4. String region = null;
  5. Long vid = null;
  6. for (Map.Entry<String, Object> entry : regionMap.entrySet()) {
  7. if ("NAME".equals(entry.getKey())) {
  8. region = (String) entry.getValue();
  9. } else if ("ID".equals(entry.getKey())) {
  10. vid = ((java.math.BigDecimal) entry.getValue()).longValue();
  11. }
  12. }
  13. resultMap.put(region, vid);
  14. return resultMap;
  15. }

Controller如下 :

  1. @RequestMapping(value = "/region3", method = RequestMethod.GET)
  2. public @ResponseBody
  3. Map<String, Long> getCountyMap(@RequestParam(required = true) int regionId) {
  4. return regionInfoService.getCountyHashMap(regionId);
  5. }

结果为 :

     返回List<Map>类似 :

Mybatis配置 :

  1. <select id="getRegionHashMap" resultType="java.util.HashMap">
  2. select name,id from
  3. tsql_test_region order by id
  4. </select>

ServiceImpl如下 :

  1. public Map<String, Long> getRegionHashMap() {
  2. List<Map<String, Object>> regionMap = regionInfoMapper
  3. .getRegionHashMap();
  4. Map<String, Long> resultMap = new HashMap<String, Long>();
  5. for (Map<String, Object> map : regionMap) {
  6. String region = null;
  7. Long id = null;
  8. for (Map.Entry<String, Object> entry : map.entrySet()) {
  9. if ("NAME".equals(entry.getKey())) {
  10. region = (String) entry.getValue();
  11. } else if ("ID".equals(entry.getKey())) {
  12. id = ((java.math.BigDecimal) entry.getValue()).longValue();
  13. }
  14. }
  15. resultMap.put(region, id);
  16. }
  17. return resultMap;
  18. }

Controller如下 :

  1. @RequestMapping(value = "/region2", method = RequestMethod.GET)
  2. public @ResponseBody
  3. Map<String, Long> getRegionMap() {
  4. return regionInfoService.getRegionHashMap();
  5. }

结果为 :

用Mybatis返回Map,List<Map>的更多相关文章

  1. mybatis返回数据类型为map,值为null的key没返回

    创建mybatis-config.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE ...

  2. Mybatis【8】-- Mybatis返回List或者Map以及模糊查询怎么搞?

    使用mybatis的时候,经常发现一个需求,我怎么知道自己是不是增加/修改/删除数据成功了? 好像执行sql之后都没有结果的.其实不是的,增删改的sql执行之后都会有一个int类型的返回值,表示的意思 ...

  3. 使用MyBatis时接收值和返回值选择Map类型或者实体类型

    MyBatis作为现近JavaEE企业级项目开发中常用的持久层框架之一,以其简洁高效的ORM映射和高度的SQL的自由性被广大开发人员认可.Mybatis在接收系统传来的参数和返回的参数时主要可以有Ma ...

  4. mybatis返回结果封装为map的探索

    需求 根据课程id 列表,查询每个课程id的总数,放到一个map里 最简单的就是循环遍历,每一个都查询一次网上说mybatis可以返回Map 和 List<Map>两种类型 尝试 直接返回 ...

  5. MyBatis 返回类型resultType为map时的null值不返回问题

    问题一:    查询结果集中 某字段 的值为null,在map中不包含该字段的key-value对 解决:在mybatis.xml中添加setting参数 <!-- 在null时也调用 sett ...

  6. 解决:oracle+myBatis ResultMap 类型为 map 时返回结果中存在 timestamp 时使用 jackson 转 json 报错

    前言:最近在做一个通用查询单表的组件,所以 sql 的写法就是 select *,然后 resultType="map" ,然后使用 jackson @ResponseBody 返 ...

  7. mybatis Mapper 中resultType使用方法及返回值为Map的写法

    mybatis学习(七)——resultType解析 resultType是sql映射文件中定义返回值类型,返回值有基本类型,对象类型,List类型,Map类型等.现总结一下再解释 总结: resul ...

  8. mybatis返回map类型数据空值字段不显示(三种解决方法)

    转http://blog.csdn.net/lulidaitian/article/details/70941769 一.查询sql添加每个字段的判断空 IFNULL(rate,'') as rate ...

  9. 【mybatis】mybatis查询 结果 用map接收,无实体接收 + 关联子表 一并返回主子表的结果

    如果后台程序没有实体对应mysql的数据表. 而mybatis想要查询mysql这个数据表的数据,返回给应用程序. 应用程序该如何接收? =============================== ...

  10. Mybatis,返回Map的时候,将Map内的Key转换为驼峰的命名

    每次使用mybatis的时候,简单的连表查询,用Map接收的时候,都是像DB定义的字段一样,类似以下 student_name,student_id,没有转换为驼峰,但是又不能因为这一个定义一个jav ...

随机推荐

  1. GOF业务场景的设计模式-----策略模式

    定义:定义一组算法,将每个算法都封装起来,并且使他们之间可以互换. 策略模式代码实现 interface IStrategy { public void doSomething(); } class ...

  2. grep之字符串搜索算法Boyer-Moore由浅入深(比KMP快3-5倍)

    这篇长文历时近两天终于完成了,前两天帮网站翻译一篇文章“为什么GNU grep如此之快?”,里面提及到grep速度快的一个重要原因是使用了Boyer-Moore算法作为字符串搜索算法,兴趣之下就想了解 ...

  3. PHP文件操作 读取与写入

    基本知识: PHP文件系统是基于Unix系统的 文件数据基本类型:二进制数据.文本数据 文件输入流:数据从源文件到内存的流动 文件输出流:数据从内存保存到文件的流动 文件操作函数: >>& ...

  4. 【bzoj2243】[SDOI2011]染色

    题目描述 给定一棵有n个节点的无根树和m个操作,操作有2类: 1.将节点a到节点b路径上所有点都染成颜色c: 2.询问节点a到节点b路径上的颜色段数量(连续相同颜色被认为是同一段),如"11 ...

  5. Linux 下新增虚拟内存

    问题描述,电脑内存1G.在启用elasticsearch的时候,报错 Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memor ...

  6. Ubuntu 14 如何解压 .zip、.rar 文件?

    .zip 和 .rar 是Windows下常用的压缩文件,在Ubuntu中如何解压? [解压.zip文件] Ubuntu中貌似已经安装了unzip软件,解压命令如下: unzip ./FileName ...

  7. CSS3属性选择通配符

    CSS3增加了更多的CSS选择器,可以实现更简单但是更强大的功能,比如:nth-child()等. Attribute selectors:在属性中可以加入通配符,包括^,$,* [att^=val] ...

  8. Javascript包含对象的数组去重

    Array.prototype.clearRepeat = function(){ var result = [], obj = {}; for(var i = 0; i < this.leng ...

  9. C\C++ sizeof 陷阱&&总结

    今天使用动态数组,本来想通过sizeof 获取动态数据,结果出现了错误. 先对自己做个测试,能做出下面这个题目,并做出合理解释,可以不用往下看了. ][]; cout<< cout< ...

  10. Java Io 之拷贝文件性能比较

    前面我们共讨论了拷贝文件有三种方式: 1. 第一种,一个字节一个字节的进行拷贝文件操作. 2. 第二种,使用字节数据批量的进行拷贝文件操作. 3. 第三种,使用带缓冲输入输出流来拷贝文件. 那么哪一种 ...