获取HashMap作为select的结果

时间:2014-12-02 10:14:49

标签: mybatis

您好我想使用myBatis查询数据库并希望返回Map

我有daoInterface赞

public interface IDocDao extends IBasicDao {
    public Map<Integer, Integer> getDocByA();
}

和mapper                            

<select id="getDocByA" resultMap="myHashMap">
    SELECT b_id, count(1) AS count FROM table_a GROUP BY b_id
</select>

需要返回包含所有这些值的1个地图,而不是地图列表

THX。帕维尔

2 个答案:

答案 0 :(得分:0)

如果您想要返回HashMap,则需要将其设为resultType,而不是resultMap。您无需定义myHashMaphashmap就足够了。

<select id="getDocByA" resultType="hashmap">
    SELECT b_id, count(1) AS count FROM table_a GROUP BY b_id
</select>

答案 1 :(得分:0)

以你的方式,mybatis将返回: [{b_id = b_id1,count = count1},{b_id = b_id2,count = count2}]。因此,您需要定义一个列表来接收这些数据,然后您可以通过其他代码将其转换为Map来循环列表。