搜尋

首頁  >  問答  >  主體

java - Mybatis,如何配置才能返回Map<String,List<Person>> 类型的resultMap?

表类似于:
PERSON : ID , NAME , AGE , BIRTHDAY ,STATUS
sql语句类似于:
SELECT * FROM PERSON ORDER BY STATUS

这样,每种STATUS对应了一列PERSON,如何配置Mybatis才能得到Map<String,List<Person>>这样的数据结构?

想象中,配置应该是类似于下边的结构:

<resultMap id="statusMapPerson" type="HashMap<String , List<Person> >">

</resultMap>
黄舟黄舟2805 天前1784

全部回覆(5)我來回復

  • ringa_lee

    ringa_lee2017-04-18 10:01:16

    sql語句類似:
    SELECT * FROM PERSON GROUP BY STATUS
    這句sql只取到了每種STATUS的第一項,不知道你的應用場景是?

    回覆
    0
  • 阿神

    阿神2017-04-18 10:01:16

    沒轍,只能自己去拼,其實mybatis回傳的map都是List<Map<String, Object>>,Map的key是column name,value是column value

    回覆
    0
  • 怪我咯

    怪我咯2017-04-18 10:01:16

    搜一下,ResultHandler看看能不能解決

    回覆
    0
  • ringa_lee

    ringa_lee2017-04-18 10:01:16

    你group by查詢後的結果就是map類型的,使用效果和你的string,list的樣式是一樣的,如果你需要你說的那種結果,就使用associate自己去組裝。寫一個物件映射List

    回覆
    0
  • 阿神

    阿神2017-04-18 10:01:16

    map 映射 ——
    object
    -key
    -list
    先映射為物件的欄位
    在轉換成map

    回覆
    0
  • 取消回覆