您的位置:首页 > 其它

mybatis 映射一对多查询返回集合

2014-08-14 11:29 344 查看
xml 配置:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"

"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.saic.grape.csc.dao.CouponManagerCscDAO">

<resultMap id="CouponMap" type="Map">

<result column="coupId" property="coupId" javaType="string"/>

<collection property="brandList" ofType="map" javaType="ArrayList" column="coupId" select="queryBrandList"/>

<collection property="cityList" ofType="map" javaType="ArrayList" column="coupId" select="queryCityList"/>

</resultMap>

<!-- 获取保养券列表 -->

<select id="getCouponList" parameterType="Map" resultMap="CouponMap" flushCache="true">

SELECT

c.id coupId,

DATE_FORMAT(c.expired_date,'%Y-%m-%d %H:%i:%s') AS expiredDate,

c.valid_days validDays,

c.amount amount,

c.states states,

DATE_FORMAT(c.modify_date,'%Y-%m-%d %H:%i:%s') AS modifyDate,

c.memo memo

FROM t_coupon c

<where>

<if test="coupId != null and coupId != ''">

c.id = #{coupId}

</if>

<if test="expiredDate != null and expiredDate != ''">

AND c.expired_date = #{expiredDate}

</if>

<if test="validDays != null and validDays != ''">

AND c.valid_days = #{validDays}

</if>

<if test="amount != null and amount != ''">

AND c.amount = #{amount}

</if>

<if test="states != null and states != ''">

AND c.states = #{states}

</if>

</where>

</select>

<select id="queryBrandList" parameterType="string" resultType="map">

SELECT

cb.id cbId,

cb.brand_id brandId,

cb.brand_name brandName

FROM t_coupon_brand cb

WHERE

cb.coupon_id = #{coupId}

</select>

<select id="queryCityList" parameterType="string" resultType="map">

SELECT

cc.id ccId,

cc.city_code cityCode,

cc.city_name cityName

FROM t_coupon_city cc

WHERE

cc.coupon_id = #{coupId}

</select>

</mapper>

java 代码:

/**

* 获取保养券规则信息列表

*/

@Override

public List<Map<String, Object>> getCouponList(Map<String, Object> params) {

// TODO Auto-generated method stub

return this.getSqlSession().selectList(nameSpace.concat("getCouponList"), params);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: