mybatis 批量新增(返回主键),批量查询,批量更新数据
2023-12-15 11:58:48
1.配置连接允许批量操作
配置url后面
&allowMultiQueries=true
2.数据层
2.1 mapper
// 新增
void saveNewStudyPartyDatums(List<StudyDatum> list);
// 查询
List<Party> getParties(@Param("partIds") List<Long> partIds);
// 更新
void updateDatumIdBatchByIds(List<StudyPartyDatum> list);
2.2 mapper.xml
<!-- 新增-->
<insert id="saveNewStudyPartyDatums" useGeneratedKeys="true" keyProperty="studyId" parameterType="list">
insert into dj_study_datum
(study_title, is_study, file_url, abort_time, top_status,create_by, create_time, update_by, update_time, service_type,party_id,type,tenant_id)
values
<foreach collection="list" item="item" separator=",">
(#{item.studyTitle}, #{item.isStudy}, #{item.fileUrl}, #{item.abortTime}, #{item.topStatus},
#{item.createBy}, #{item.createTime}, #{item.updateBy},#{item.updateTime},
#{item.serviceType},#{item.partyId},#{item.type},#{item.tenantId})
</foreach>
</insert>
<!-- 查询-->
<select id="getParties" resultType="com.ysgz.web.domain.Party">
select dp.* from dj_party dp
where dp.del_flag='0'
and dp.party_id in
<foreach collection="partIds" item="partyId" open="(" separator="," close=")">
#{partyId}
</foreach>
</select>
<!-- 更新-->
<update id="updateDatumIdBatchByIds" parameterType="list">
<foreach collection="list" item="item" separator=";">
update dj_study_party_datum
<set>
datum_id=#{item.datumId}
</set>
where party_datum_id=#{item.partyDatumId}
</foreach>
</update>
文章来源:https://blog.csdn.net/qq_43816654/article/details/135011327
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!