mybatis 嵌套查询
- collection定义关联集合类型的属性的封装规则
- ofType:指定集合里面元素的类型
- collection中的column属性是数据库中的列名,或着是列的别名,用来传递给select属性所指定语句中的参数
<!--selectMKxxH5ListByQuery-->
<!--MyBatis会将第一条SQL语句查询出来的该列的值用于所嵌套的SQL映射语句的入参。-->
<resultMap id="KhglMkxxH5Model" type="com.copote.project.customermanage.comprehensive.model.KhglMkxxH5Model" extends="BaseResultMap">
<collection property="children" select="selectSubMKxxH5ListByMkdm" column="N_MKDM"></collection>
</resultMap>
<!--菜单-->
<select id="selectMKxxH5ListByQuery" resultMap="KhglMkxxH5Model"
parameterType="com.copote.project.customermanage.comprehensive.query.KhglMkxxH5Query" >
SELECT * FROM T_PUB_MKXX_H5 o WHERE length(o.n_mkdm) =1
</select>
<!--子菜单-->
<select id="selectSubMKxxH5ListByMkdm" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
SELECT * FROM T_PUB_MKXX_H5 o WHERE o.n_xtdm = 8 and o.n_sjmk = #{nMkdm} and o.n_csbz =0
</select>
多个参数
<collection property="emps" select="com.mybatis.dao.EmployeeMapperPlus.getEmpsByDeptId" column="{prop1 =col,prp2=col2}"></collection>