mybatis返回的map结果如何设置有序

 更新时间:2022年01月23日 08:42:21   作者:mazhongjia  
这篇文章主要介绍了mybatis返回的map结果如何设置有序,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

mybatis返回的map结果设置有序

mybatis返回的map结果设置有序(与查询的域顺序一致)

<select id="exoprtGoods" resultType="java.util.HashMap">

这样的情况下是无排序的

想要按着查询的顺序来的话

换成

<select id="exoprtGoods" resultType="java.util.LinkedHashMap">

mybatis中查询的结果有序展示

如何把mybatis中sql查询的结果按照自己定义的resultMap有序展示?

1、分析为啥结果是乱序

先看下图:

 第一张为select语句,resultType是本项目封装的一个类

在这里插入图片描述

第二张为resultMap语句,type也是本项目封装的一个类

在这里插入图片描述

 第三张是本项目封装的一个类,可以看到继承了HashMap

在这里插入图片描述

通过上图可以分析出,HashMap存取数据大多是无序的,那么关键点找出来了。

要想查询出来的结果有序,替换HashMap为LinkedHashMap

2、修改

因为PageData本项目封装类其他地方也使用到了,因此这里只更改xml里面的

  • 更改resultType为 java.util.LinkedHashMap
  • 更改typeype为 java.util.LinkedHashMap

在这里插入图片描述

在这里插入图片描述

补充

HashMap:

  • HashMap是一个最常用的Map,它根据键的HashCode 值存储数据,根据键可以直接获取它的值,具有很快的访问速度。
  • HashMap最多只允许一条记录的键为Null;
  • 允许多条记录的值为 Null;
  • HashMap不支持线程的同步,即任一时刻可以有多个线程同时写HashMap;
  • 可能会导致数据的不一致。

LinkedHashMap:

LinkedHashMap也是一个HashMap,但是内部维持了一个双向链表,可以保持顺序

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • java 图片与base64相互转化的示例

    java 图片与base64相互转化的示例

    这篇文章主要介绍了java 图片与base64相互转化的示例,帮助大家更好的理解和使用Java,感兴趣的朋友可以了解下
    2020-10-10
  • 解决mybatis用Map返回的字段全变大写的问题

    解决mybatis用Map返回的字段全变大写的问题

    这篇文章主要介绍了解决mybatis用Map返回的字段全变大写的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • Spring Boot + Kotlin整合MyBatis的方法教程

    Spring Boot + Kotlin整合MyBatis的方法教程

    前几天由于工作需要,便开始学习了kotlin,java基础扎实学起来也还算比较快,对于kotlin这个编程语言自然是比java有趣一些,下面这篇文章主要给大家介绍了关于Spring Boot + Kotlin整合MyBatis的方法教程,需要的朋友可以参考下。
    2018-01-01
  • java学习之路_篇超好的文章

    java学习之路_篇超好的文章

    一篇超好的文章!就看你有没耐心看!java学习之路!
    2008-10-10
  • Java Runtime的使用详解

    Java Runtime的使用详解

    这篇文章主要介绍了Java Runtime的使用详解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • java将html转成图片代码实例(html2image)

    java将html转成图片代码实例(html2image)

    这篇文章主要介绍了java将html转成图片的相关资料,在Java开发中,将HTML转换为图片可以使用html2image库,文中通过代码及图文介绍的非常详细,需要的朋友可以参考下
    2024-09-09
  • 基于python locust库实现性能测试

    基于python locust库实现性能测试

    这篇文章主要介绍了基于python locust库实现性能测试,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • Java-String类最全汇总(下篇)

    Java-String类最全汇总(下篇)

    这篇文章主要介绍了Java-String类最全汇总(下篇),本文章内容详细,本模块分为了两部分,本次为下篇,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2023-01-01
  • 使用Java8 Stream流的skip + limit实现批处理的方法

    使用Java8 Stream流的skip + limit实现批处理的方法

    Stream 作为 Java 8 的一大亮点,它与 java.io 包里的 InputStream 和 OutputStream 是完全不同的概念这篇文章主要介绍了使用Java8 Stream流的skip + limit实现批处理,需要的朋友可以参考下
    2022-07-07
  • log4j控制日志输出文件名称的两种方式小结

    log4j控制日志输出文件名称的两种方式小结

    这篇文章主要介绍了log4j控制日志输出文件名称的两种方式小结,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12

最新评论