Mybaties配置文件使用collection标签

1.示例

定义一个特殊map类型DepartmentMap

    <!-- 获取一级、二级科室-旧  deprecated -->
    <resultMap id="DepartmentMap" type="map">
        <id column="id" jdbcType="VARCHAR" property="deptCode" />
        <result column="name" jdbcType="VARCHAR" property="deptName" />
        <collection property="children" javaType="java.util.ArrayList" ofType="com.gg.midend.entity.SubDepartment">
            <id column="sub_id" jdbcType="VARCHAR" property="deptCode" />
            <result column="sub_name" jdbcType="VARCHAR" property="deptName" />
        </collection>
    </resultMap>

使用DepartmentMap类型

    <select id="selectDepartment" parameterType="map" resultMap="DepartmentMap">
        SELECT subDept.id AS sub_id,
               subDept.`name` AS sub_name,
               parDept.id,
               parDept.`name`
        FROM (SELECT * FROM sch_dept WHERE `level` = '2' AND active = '1') AS subDept
        LEFT JOIN (SELECT * FROM sch_dept WHERE `level` = '1' AND active = '1') AS parDept ON subDept.par_id = parDept.id
        WHERE parDept.hospital_id = #{hospitalId}
        ORDER BY parDept.`order`, subDept.id
    </select>

Java代码:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值