0 0

求教,Mybatis 如何配置返回结果为hashmap10

我的需求是,将返回结果集的一列作为map的key,另一列作为相应的value 并实现一对多
<resultMap type="User" id="userdeals">
		<result property="userid" column="ID"/>
		<result property="username" column="NAME"/>
		<collection property="deals" javaType="java.util.HashMap" >
			<result property="TJQJ" column="SL"/>
		</collection>
</resultMap>

<select id="getUserDeal" resultMap="userdeals">
select t1.ID,t1.NAME,t2.TJQJ,t2.SL,ROWNUM from users t1,deals t2 where t1.id=t2.userid
</select>

类如下
publi class User{
private String userid;
private String username;
private Map deals
//getter and setters

}


结果集样式如下
ID    NAME    TJQJ        SL
1     Sam     2012-01-01  9
1     Sam     2012-01-02  12
2     Tom     2012-01-01  5
2     Tom     2012-01-02  19
除了SL列,其它列都为VARCHAR

因为要做一对多映射,暂用ROWNUM作为collection 的ID
但上面的配置是不正确的,我就是想将TJQJ 和SL两列的数据作为map的key和value分别放到相应的user对象里去
求教该怎么配,另辟蹊径的建议就不要说了。。
2012年2月10日 15:46
目前还没有答案

相关推荐

Global site tag (gtag.js) - Google Analytics