java - Mybatis,如何配置才能返回Map<String,List<Person>> 类型的resultMap?
黄舟
黄舟 2017-04-18 09:59:16
0
5
1772

表类似于:
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>
黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

Antworte allen(5)
左手右手慢动作

sql语句类似于:
SELECT * FROM PERSON GROUP BY STATUS
这句sql只取到了每种STATUS的第一项,不知道你的应用场景是?

阿神

没辙,只能自己去拼,实际上mybatis返回的map都是List<Map<String, Object>>,Map的key是column name,value是column value

刘奇

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

左手右手慢动作

你group by查询后的结果就是map类型的,使用效果和你的string,list的样式是一样的,如果你需要你说的那种结果,就使用associate自己去组装。写一个对象映射List<Person>

阿神

map 映射 ——
object
-key
-list<String>
先映射为对象的字段
在转换成map

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage