最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

場(chǎng)景說(shuō)明

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

具體格式如下:

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

處理過(guò)程

第一層實(shí)體類(lèi):

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

    private int studioId;

    private List<CourseInfoDto> courseInfoDtoList;

   // 省略get/set
}

第二層實(shí)體類(lèi):

public class CourseInfoDto implements Serializable {

    private static final long serialVersionUID = -2975706030949793781L;

    private int courseType;

    private List<CourseDetailInfoDto> courseDetailInfoDtoList;

	// 省略get/set
}

第三層實(shí)體類(lèi):

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)文章

  • 淺談 java中ArrayList、Vector、LinkedList的區(qū)別聯(lián)系

    淺談 java中ArrayList、Vector、LinkedList的區(qū)別聯(lián)系

    ArrayList,Vector底層是由數(shù)組實(shí)現(xiàn),LinkedList底層是由雙線(xiàn)鏈表實(shí)現(xiàn),從底層的實(shí)現(xiàn)可以得出性能問(wèn)題ArrayList,Vector插入速度較慢,查詢(xún)速度較快,而LinkedList插入速度較快,而查詢(xún)速度較慢。再者由于Vevtor使用了線(xiàn)程安全鎖,所以ArrayList的運(yùn)行效率高于Vector
    2015-11-11
  • Java如何解決發(fā)送Post請(qǐng)求報(bào)Stream?closed問(wèn)題

    Java如何解決發(fā)送Post請(qǐng)求報(bào)Stream?closed問(wèn)題

    這篇文章主要介紹了Java如何解決發(fā)送Post請(qǐng)求報(bào)Stream?closed問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • 深入Java不可變類(lèi)型的詳解

    深入Java不可變類(lèi)型的詳解

    本篇文章是Java中的不可變類(lèi)型進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • java poi sax方式處理大數(shù)據(jù)量excel文件

    java poi sax方式處理大數(shù)據(jù)量excel文件

    這篇文章主要介紹了java poi sax方式處理大數(shù)據(jù)量excel文件,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • SpringBoot項(xiàng)目部署到服務(wù)器的兩種方式

    SpringBoot項(xiàng)目部署到服務(wù)器的兩種方式

    目前,前后端分離的架構(gòu)已成主流,而使用SpringBoot構(gòu)建Web應(yīng)用是非常快速的,項(xiàng)目發(fā)布到服務(wù)器上的時(shí)候,只需要打成一個(gè)jar包,然后通過(guò)命令 : java -jar jar包名稱(chēng)即可啟動(dòng)服務(wù)了,本文介紹了SpringBoot項(xiàng)目部署到服務(wù)器的兩種方式,需要的朋友可以參考下
    2024-10-10
  • java中PreparedStatement和Statement詳細(xì)講解

    java中PreparedStatement和Statement詳細(xì)講解

    這篇文章主要介紹了java中PreparedStatement和Statement詳細(xì)講解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • Struts2學(xué)習(xí)筆記(3)-DMI動(dòng)態(tài)調(diào)用方式

    Struts2學(xué)習(xí)筆記(3)-DMI動(dòng)態(tài)調(diào)用方式

    本文主要介紹Struts2的DMI動(dòng)態(tài)調(diào)用的兩種方式,簡(jiǎn)單實(shí)用,希望能給大家做一個(gè)參考。
    2016-06-06
  • Java 多線(xiàn)程實(shí)例講解(一)

    Java 多線(xiàn)程實(shí)例講解(一)

    本文主要介紹Java 多線(xiàn)程的知識(shí),這里整理了詳細(xì)的資料及簡(jiǎn)單示例代碼有需要的小伙伴可以參考下
    2016-09-09
  • Java RabbitMQ的TTL和DLX全面精解

    Java RabbitMQ的TTL和DLX全面精解

    過(guò)期時(shí)間TTL表示可以對(duì)消息設(shè)置預(yù)期的時(shí)間,在這個(gè)時(shí)間內(nèi)都可以被消費(fèi)者接收獲取;過(guò)了之后消息將自動(dòng)被刪除。DLX, 可以稱(chēng)之為死信交換機(jī),當(dāng)消息在一個(gè)隊(duì)列中變成死信之后,它能被重新發(fā)送到另一個(gè)交換機(jī)中,這個(gè)交換機(jī)就是DLX ,綁定DLX的隊(duì)列就稱(chēng)之為死信隊(duì)列
    2021-09-09
  • mybatis中如何使用小于號(hào)

    mybatis中如何使用小于號(hào)

    這篇文章主要介紹了mybatis中如何使用小于號(hào)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11

最新評(píng)論

榆林市| 永宁县| 香港 | 即墨市| 盘锦市| 灯塔市| 五台县| 迭部县| 阳信县| 扶风县| 远安县| 靖安县| 洛隆县| 清流县| 建宁县| 宁南县| 云安县| 阳山县| 西贡区| 上饶市| 岑巩县| 许昌市| 铜山县| 西贡区| 高碑店市| 德令哈市| 天峻县| 化德县| 靖边县| 临澧县| 武清区| 光山县| 印江| 广宁县| 浑源县| 红河县| 资中县| 大丰市| 兴义市| 灵石县| 济阳县|