无论是association
标签定义单个关联对象还是collection
标签定义集合关联对象,它们在做分步查询时,都要传入一个column="?"
,column
的作用就是指定把哪一列的值传给select
这个方法
这是传单个值:
<collection property="emps"
select="com.atguigu.mybatis.dao.EmployeeMapperPlus.getEmpsByDeptId"
column="id"></collection>
如果要传多列的值,可以将多列的值封装map传递:
column="{key1=column1,key2=column2}"
fetchType="lazy"
:表示使用延迟加载;
lazy
:延迟eager
:立即
传多列的值的例子:
<collection property="emps"
select="com.atguigu.mybatis.dao.EmployeeMapperPlus.getEmpsByDeptId"
column="{deptId=id}" fetchType="lazy"></collection>