mybatis中查詢的結果有序展示

如何把mybatis中sql查詢的結果按照自己定義的resultMap有序展示?

1、分析爲啥結果是亂序

先看下圖:

 第一張爲select語句,resultType是本項目封裝的一個類

在這裏插入圖片描述

 第二張爲resultMap語句,type也是本項目封裝的一個類

在這裏插入圖片描述

 第三張是本項目封裝的一個類,可以看到繼承了HashMap

在這裏插入圖片描述
通過上圖可以分析出,HashMap存取數據大多是無序的,那麼關鍵點找出來了。
要想查詢出來的結果有序,替換HashMapLinkedHashMap


2、修改

因爲PageData本項目封裝類其他地方也使用到了,因此這裏只更改xml裏面的

更改resultTypejava.util.LinkedHashMap

更改typeypejava.util.LinkedHashMap

在這裏插入圖片描述

在這裏插入圖片描述


補充:

HashMap:
  • HashMap是一個最常用的Map,它根據鍵的HashCode 值存儲數據,根據鍵可以直接獲取它的值,具有很快的訪問速度。
  • HashMap最多隻允許一條記錄的鍵爲Null;
  • 允許多條記錄的值爲 Null;
  • HashMap不支持線程的同步,即任一時刻可以有多個線程同時寫HashMap;
  • 可能會導致數據的不一致。
LinkedHashMap:

LinkedHashMap也是一個HashMap,但是內部維持了一個雙向鏈表,可以保持順序


author:su1573

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章