温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

mybatis返回的map结果怎么设置有序

发布时间:2022-01-24 09:32:23 来源:亿速云 阅读:270 作者:柒染 栏目:开发技术

今天给大家介绍一下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是本项目封装的一个类

mybatis返回的map结果怎么设置有序

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

mybatis返回的map结果怎么设置有序

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

mybatis返回的map结果怎么设置有序

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

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

2、修改

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

  • 更改resultType为 java.util.LinkedHashMap

  • 更改typeype为 java.util.LinkedHashMap

mybatis返回的map结果怎么设置有序

mybatis返回的map结果怎么设置有序

补充

HashMap:

  • HashMap是一个最常用的Map,它根据键的HashCode 值存储数据,根据键可以直接获取它的值,具有很快的访问速度。

  • HashMap最多只允许一条记录的键为Null;

  • 允许多条记录的值为 Null;

  • HashMap不支持线程的同步,即任一时刻可以有多个线程同时写HashMap;

  • 可能会导致数据的不一致。

LinkedHashMap:

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

以上就是mybatis返回的map结果怎么设置有序的全部内容了,更多与mybatis返回的map结果怎么设置有序相关的内容可以搜索亿速云之前的文章或者浏览下面的文章进行学习哈!相信小编会给大家增添更多知识,希望大家能够支持一下亿速云!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI