collection标签的属性
property
property
属性对应ResultMap
标签中的type
属性对应的实体类的属性
column
column
属性为select
标签中的动态参数,如果要自定义动态参数的可以使用{"selectParamName1=columnName1,selectParamName2=columnName2"}
为例
ofType
ofType
属性为返回的实体类型
select
select
为对应的select
标签查询的sql
语句,注意点1:select
标签中无需设置parameterType
,否走会抛出异常There is no setter for property named...
,注意点2:select
标签可以返回resultMap
,即resultMap
的type
与collection
中的ofType
保持一致即可。
对上面的四个属性配置即可
代码实例
<?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.murata.diamond.attendance.mapper.Wdmc0008Mapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap"
type="com.murata.diamond.attendance.entity.Wdmc0008">
<id column="CDV734" property="primaryKey" />
<result column="CDV702" property="orgId" />
<result column="KBV723" property="personDistinction" />
<result column="CDV006" property="jobNumber" />
<result column="DHV712" property="orgName" />
<result column="VERSION" property="version" />
<collection property="joberList" column="{orgId = CDV702}"
ofType="com.murata.diamond.attendance.vo.PermissionManageVo"
select="selectJoberList" />
</resultMap>
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMapVo"
type="com.murata.diamond.attendance.vo.PermissionManageVo">
<result column="CDV702" property="orgId" />
<result column="DHV712" property="orgName" />
<result column="KBV723" property="personDistinction" />
<result column="CDV006" property="jobNumber" />
<result column="DHV033" property="joberName" />
</resultMap>
<select id="selectDepartment" resultMap="BaseResultMap">
SELECT DISTINCT
WDMC0008.CDV702,DHV712 FROM WDMC0008 LEFT JOIN WDM010 ON
WDM010.CDV702
= WDMC0008.CDV702 ORDER BY WDMC0008.CDV702
</select>
<select id="selectJoberList" resultMap="BaseResultMapVo">
SELECT
WDMC0008.CDV702,DHV712,WDMC0008.CDV006,DHV033,KBV723
FROM WDMC0008
LEFT
JOIN WDM002 ON WDMC0008.CDV006 = WDM002.CDV006
LEFT JOIN WDM010 ON
WDMC0008.CDV702 = WDM010.CDV702
WHERE WDMC0008.CDV702 = #{orgId}
</select>
</mapper>
小错误笔记:
- 一定不要加入
parameterType
el-table
的树型数据+懒加载,需要设置row-key
,tree-props
,lazy
,load
等,其中load
函数的三个参数tree,treenode,resolve
,tree
获取获取请求的参数,reslove(dataList)
,其中dataList
为请求返回的子树列表