mybatis collection关联查询多个参数方式
作者:普通网友
在使用MyBatis进行关联查询时,往往需要根据多个参数进行查询,例如,使用evtId和businessType作为查询条件,同时在resultMap中配置id和businessType1作为结果映射,这种情况下,可以通过<sql>标签定义参数模板,或者使用@Param注解指定参数名称
mybatis collection 关联查询多个参数
column="{evtId=id,businessType=businessType1}"
描述
evtId
是关联查询的参数,businessType
也是。
id
是resultMap
的id,businessType1也是如此
<resultMap id="BaseResultMap" type="com.kingdom.kdum.event.vo.event.EvtToDoListVO"> <id column="id" jdbcType="BIGINT" property="id" /> <result column="businessType1" jdbcType="INTEGER" /> <result column="businessType2" jdbcType="INTEGER" /> <collection property="annexeBeforeList" ofType="com.kingdom.kdum.event.mapper.read.event.EvtAnnexeReadMapper" column="{evtId=id,businessType=businessType1}" select="com.kingdom.kdum.event.mapper.read.event.EvtAnnexeReadMapper.findEventPicByEventIdAndBsType"> </collection> <collection property="annexeAfterList" ofType="com.kingdom.kdum.event.mapper.read.event.EvtAnnexeReadMapper" column="{evtId=id,businessType=businessType2}" select="com.kingdom.kdum.event.mapper.read.event.EvtAnnexeReadMapper.findEventPicByEventIdAndBsType"> </collection> </resultMap>
查询
<select id="findEventDetailInfo" resultMap="BaseResultMap" parameterType="java.lang.Long"> SELECT <include refid="Base_Column_List"/>,1 as businessType1,2 as businessType2 FROM evt_t_event e where e.id = #{id,jdbcType=BIGINT} AND e.db_status = 1 </select>
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
- MyBatis使用嵌套查询collection和association的实现
- mybatis resultMap之collection聚集两种实现方式
- mybatis中association和collection的使用与区别
- MyBatis的collection和association的使用解读
- Mybatis中一对多(collection)和一对一(association)的组合查询使用
- Mybatis使用Collection属性的示例代码
- Mybatis的collection三层嵌套查询方式(验证通过)
- mybatis collection和association的区别解析
- MyBatis中<collection>标签的多种用法