mybatis使用foreach標簽進行嵌套插入
更新時間:2024年09月24日 09:26:18 作者:賣柴火的小伙子
數(shù)據(jù)庫插入操作常見于多層架構(gòu)設(shè)計中,本文提供了一個具體的實現(xiàn)方案,涉及三層實體類結(jié)構(gòu),第一層實體類負責基本數(shù)據(jù)結(jié)構(gòu)的定義,第二層和第三層實體類則提供更詳細的業(yè)務(wù)邏輯處理,同時,文章還介紹了相應(yīng)的mapper接口和配置文件設(shè)置
場景說明
現(xiàn)有一插入操作,要求按照指定格式進行插入操作.
具體格式如下:
上面各對象中對應(yīng)的表字段:
處理過程
第一層實體類:
public class StudioCourseAddUpdateDto implements Serializable { private static final long serialVersionUID = 4862281856286977081L; private int studioId; private List<CourseInfoDto> courseInfoDtoList; // 省略get/set }
第二層實體類:
public class CourseInfoDto implements Serializable { private static final long serialVersionUID = -2975706030949793781L; private int courseType; private List<CourseDetailInfoDto> courseDetailInfoDtoList; // 省略get/set }
第三層實體類:
public class CourseDetailInfoDto implements Serializable { private static final long serialVersionUID = -1423166674509217993L; private int courseId; private String feeCount; // 省略get/set }
mapper接口:
int bathAddStudioCourseInfo(@Param("studioCourseAddUpdateDtoList") List<courseAddUpdateDto> courseAddUpdateDtoList);
配置文件:
<insert id="bathAddStudioCourseInfo" parameterType="com.it.tao.CourseAddUpdateDto"> <foreach collection="courseAddUpdateDtoList" item="courseAddUpdateDto" > <foreach collection="courseAddUpdateDto.courseInfoDtoList" item="courseInfoDto" > <foreach collection="courseInfoDto.courseDetailInfoDtoList" item="courseDetailInfoDto" > INSERT INTO card_course (course_id,studio_id,course_type,fee_count) VALUES (#{courseDetailInfoDto.courseId},#{courseAddUpdateDto.studioId},#{courseInfoDto.courseType},#{courseDetailInfoDto.feeCount}); </foreach> </foreach> </foreach> </insert>
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
java 中的static關(guān)鍵字和final關(guān)鍵字的不同之處
java 中的static關(guān)鍵字和final關(guān)鍵字的不同之處,需要的朋友可以參考一下2013-03-03java實現(xiàn)阿拉伯數(shù)字轉(zhuǎn)漢字數(shù)字
這篇文章主要為大家詳細介紹了java實現(xiàn)阿拉伯數(shù)字轉(zhuǎn)換為漢字數(shù)字源代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-04-04