Mybatis,一对多查询

Mybatis,一对多查询,留个记录!

主表实体对象:

private Long id;
private String name;
private List<子表实体> 子表List;

get...
set...

主表-mapper.xml:

<!-- 一对多 -->
    <resultMap id="自定义名,主表查询使用该id" type="主表实体对象">
<!--        <id property="id" column="id"/>-->
<!--        <result property="name" column="name"/>-->

 <!-- 用collection标签 ,property对应实体类属性要对应子表List字段-->
<!-- column传主表的参数,如果主表没有该字段,可在主表建虚拟字段 如otherId-->
        <collection property="子表List" column="{id=id,otherId=otherId}"  select="子表查询自定义的id"/>
    </resultMap>
<!-- 主表查询 -->
<select id="dao层方法名" resultMap="上面的resultMap的id">
<!-- 有查询条件 param -->
	select * 
	<!--虚拟字段,给子表传参使用-->
	IFNULL(#{param.otherId},'') as otherId,
	
	from 主表 where 主表.name = #{param.name}
</select>
<!--子表查询-->
<select id="子表查询自定义的id" resultType="子表实体">
        select * from  子表 where 
        子表.主表id=#{id} 
        and 子表.otherId=#{otherId}
    </select>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值