Java MyBatis:如何返回列表地图?

Java MyBatis:如何返回列表地图?,java,mybatis,Java,Mybatis,我一直在谷歌上搜索,直到我脸色发青,找不到答案。如何配置MyBatis以返回列表映射 即 HashMap 例如,如果我有一个查询,它返回了我所有客户的所有订单,我想让它返回一个包含客户id键入的订单列表的映射 编辑 我通过编写一个定制的ResultHandler找到了一种方法,但我更愿意让MyBatis为我做这件事,就像Hibernate为映射或注释所做的那样 谢谢 我发现的最简单的事情是创建一个新的POJO,并将id和对象列表放在其中 StringFoo.java public class

我一直在谷歌上搜索,直到我脸色发青,找不到答案。如何配置MyBatis以返回列表映射

HashMap
例如,如果我有一个查询,它返回了我所有客户的所有订单,我想让它返回一个包含客户id键入的订单列表的映射

编辑

我通过编写一个定制的ResultHandler找到了一种方法,但我更愿意让MyBatis为我做这件事,就像Hibernate为映射或注释所做的那样


谢谢

我发现的最简单的事情是创建一个新的POJO,并将
id
和对象列表放在其中

StringFoo.java

public class StringFoo {
    String name;
    List<Foo> foos;
}
List<StringFoo> findFoo(@Param("id") Long id);
公共类StringFoo{
字符串名;
列出食物;
}
Mapper.java

public class StringFoo {
    String name;
    List<Foo> foos;
}
List<StringFoo> findFoo(@Param("id") Long id);
列出findFoo(@Param(“id”)长id);
Mapper.xml

<resultMap id="FooResultMap" type="com.package.StringFoo">
    <result property="name" column="name"/>
    <collection property="foo" resultMap="FooMapORJavaType"/>
</resultMap>
<select id="findFoo" resultMap="FooResultMap"></select>


您确定不需要映射列表吗?非常确定,我只需要一个映射,其中一列(即customerID)作为键,另一个对象(即order objects)的列表作为值。我只是想知道如何在sql中创建hashmap。一定很容易,但对我来说似乎很难。首先,我认为您有一个myBatis映射对象,它应该由框架创建。然后我宁愿尝试一个“映射”对象列表,例如可以轻松创建的bean。我的意见-我更喜欢豆子列表。