欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mybatis使用foreach標(biāo)簽進(jìn)行嵌套插入

 更新時(shí)間:2024年09月24日 09:26:18   作者:賣柴火的小伙子  
數(shù)據(jù)庫插入操作常見于多層架構(gòu)設(shè)計(jì)中,本文提供了一個(gè)具體的實(shí)現(xiàn)方案,涉及三層實(shí)體類結(jié)構(gòu),第一層實(shí)體類負(fù)責(zé)基本數(shù)據(jù)結(jié)構(gòu)的定義,第二層和第三層實(shí)體類則提供更詳細(xì)的業(yè)務(wù)邏輯處理,同時(shí),文章還介紹了相應(yīng)的mapper接口和配置文件設(shè)置

場景說明

現(xiàn)有一插入操作,要求按照指定格式進(jìn)行插入操作.

具體格式如下:

上面各對(duì)象中對(duì)應(yīng)的表字段:

處理過程

第一層實(shí)體類:

public class StudioCourseAddUpdateDto implements Serializable {
    private static final long serialVersionUID = 4862281856286977081L;

    private int studioId;

    private List<CourseInfoDto> courseInfoDtoList;

   // 省略get/set
}

第二層實(shí)體類:

public class CourseInfoDto implements Serializable {

    private static final long serialVersionUID = -2975706030949793781L;

    private int courseType;

    private List<CourseDetailInfoDto> courseDetailInfoDtoList;

	// 省略get/set
}

第三層實(shí)體類:

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é)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • MyBatis攔截器原理探究

    MyBatis攔截器原理探究

    MyBatis提供了一種插件(plugin)的功能,雖然叫做插件,但其實(shí)這是攔截器功能.這篇文章主要介紹了MyBatis攔截器原理探究,需要的朋友可以參考下
    2018-02-02
  • java獲取圖片的大小、寬度、高度方式

    java獲取圖片的大小、寬度、高度方式

    文章介紹了如何將File對(duì)象轉(zhuǎn)換為MultipartFile對(duì)象的過程,并分享了個(gè)人經(jīng)驗(yàn),希望能為讀者提供參考
    2025-02-02
  • java實(shí)現(xiàn)壓縮字符串和java字符串過濾

    java實(shí)現(xiàn)壓縮字符串和java字符串過濾

    這篇文章主要介紹了java實(shí)現(xiàn)壓縮字符串和java字符串過濾,需要的朋友可以參考下
    2014-04-04
  • java 中的static關(guān)鍵字和final關(guān)鍵字的不同之處

    java 中的static關(guān)鍵字和final關(guān)鍵字的不同之處

    java 中的static關(guān)鍵字和final關(guān)鍵字的不同之處,需要的朋友可以參考一下
    2013-03-03
  • java實(shí)現(xiàn)阿拉伯?dāng)?shù)字轉(zhuǎn)漢字?jǐn)?shù)字

    java實(shí)現(xiàn)阿拉伯?dāng)?shù)字轉(zhuǎn)漢字?jǐn)?shù)字

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)阿拉伯?dāng)?shù)字轉(zhuǎn)換為漢字?jǐn)?shù)字源代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • 實(shí)例展示使用Java壓縮和解壓縮7z文件的方法

    實(shí)例展示使用Java壓縮和解壓縮7z文件的方法

    這篇文章主要介紹了實(shí)例展示使用Java壓縮和解壓縮7z文件的方法,用到了7-zip的開源項(xiàng)目7-zip-JBinding,需要的朋友可以參考下
    2015-11-11
  • 啟動(dòng)Spring項(xiàng)目詳細(xì)過程(小結(jié))

    啟動(dòng)Spring項(xiàng)目詳細(xì)過程(小結(jié))

    這篇文章主要介紹了啟動(dòng)Spring項(xiàng)目詳細(xì)過程(小結(jié)),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • Java線程安全狀態(tài)專題解析

    Java線程安全狀態(tài)專題解析

    線程安全是多線程編程時(shí)的計(jì)算機(jī)程序代碼中的一個(gè)概念。在擁有共享數(shù)據(jù)的多條線程并行執(zhí)行的程序中,線程安全的代碼會(huì)通過同步機(jī)制保證各個(gè)線程都可以正常且正確的執(zhí)行,不會(huì)出現(xiàn)數(shù)據(jù)污染等意外情況
    2022-03-03
  • 解決SpringBoot請(qǐng)求返回字符串中文亂碼的問題

    解決SpringBoot請(qǐng)求返回字符串中文亂碼的問題

    這篇文章主要介紹了解決SpringBoot請(qǐng)求返回字符串中文亂碼的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • Java8 Map中新增的方法使用總結(jié)

    Java8 Map中新增的方法使用總結(jié)

    這篇文章主要介紹了Java8 Map中新增的方法使用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-11-11

最新評(píng)論