国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Mybatis批量插入、修改

這篇具有很好參考價值的文章主要介紹了Mybatis批量插入、修改。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

? ? ? ? 在 MyBatis 中,<foreach> 標簽用于遍歷集合類型的條件,并且可以將多個參數(shù)值拼接成為 SQL 語句的一個部分,通常被用于批量插入或更新等操作。?

<foreach>屬性及介紹

? ? ? ??

屬性 介紹
collection 集合名稱
item 字符別名
index 索引別名
open 循環(huán)前綴
close 循環(huán)后綴
separator 分隔符

除了上述屬性,<foreach>還有其他屬性但不常用。

舉例

批量增加

<insert id="insertBatch" parameterType="java.util.List">
? ? ? ? INSERT INTO class
? ? ? ? ? ? (id,name,sex)
? ? ? ? VALUES
?    // list 是傳入的集合名稱 ?item是每條集合內(nèi)容的別名 ?separator用“,”分割
? ? ? ? <foreach collection ="list" item="item" separator =",">
? ? ? ? ? ? (#{item.id},#{item.name},#{item.sex})
? ? ? ? </foreach >
? ? </insert>

批量修改

<update id="batchUpdate" parameterType="java.util.List">
        <foreach collection="list" item="item" open="" close="" separator=";">
            update class
            <set>
                <if test="item.name!=null">
                    name = #{item.name,jdbcType=VARCHAR},
                </if>
                <if test="item.sex!=null">
                    sex = #{item.sex,jdbcType=VARCHAR}
                </if>
            </set>
            where id = #{item.id,jdbcType=INTEGER}
        </foreach>
</update>

在Mysql中其實是沒有foreach方法的,Mysql循環(huán)可以使用WHILE或LOOP來制造循環(huán)結(jié)構(gòu)。

例如

DECLARE i INT DEFAULT 0;
DECLARE max INT DEFAULT 18;

WHILE i < max DO
  INSERT INTO class (id, name, …) VALUES (value1, value2, …);
  SET i = i + 1;
END WHILE;

????????需要注意的是,批量操作結(jié)果可能會不符合預(yù)期,為了保證不出現(xiàn)誤刪、誤改等情況發(fā)生,操作前最好先備份下需要操作的數(shù)據(jù)庫或表。文章來源地址http://www.zghlxwxcb.cn/news/detail-731937.html

到了這里,關(guān)于Mybatis批量插入、修改的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Java編程精選:掌握Spring Boot、MySQL和MyBatis的增刪改查實戰(zhàn)

    當使用Spring Boot和MyBatis來實現(xiàn)對數(shù)據(jù)庫的操作時,可以按照以下步驟進行配置和開發(fā): 確保已經(jīng)在項目的 pom.xml 文件中添加了Spring Boot和MyBatis的依賴。 配置數(shù)據(jù)庫連接信息。在 application.properties 文件中添加以下配置: 請根據(jù)實際情況修改數(shù)據(jù)庫連接URL、用戶名和密碼。 創(chuàng)建

    2024年02月08日
    瀏覽(25)
  • spring boot集成mybatis-plus——Mybatis Plus 批量 Insert_新增數(shù)據(jù)(圖文講解)

    spring boot集成mybatis-plus——Mybatis Plus 批量 Insert_新增數(shù)據(jù)(圖文講解)

    ?更新時間 2023-01-10 16:02:58 大家好,我是小哈。 本小節(jié)中,我們將學(xué)習(xí)如何通過 Mybatis Plus 實現(xiàn) MySQL 批量插入數(shù)據(jù)。 先拋出一個問題:假設(shè)老板給你下了個任務(wù),向數(shù)據(jù)庫中添加 100 萬條數(shù)據(jù),并且不能耗時太久! 通常來說,我們向 MySQL 中新增一條記錄,SQL 語句類似如下:

    2024年02月04日
    瀏覽(28)
  • No Spring環(huán)境Mybatis-Plus批量插入并返回主鍵的兩種方式

    No Spring環(huán)境Mybatis-Plus批量插入并返回主鍵的兩種方式

    批量插入,可以把Mybatis-Plus看作是Mybatis加強版;故Mybatis中的相關(guān)操作都可以在Mybatis-Plus中使用;在mysql數(shù)據(jù)庫中支持批量插入,所以只要配置useGeneratedKeys和keyProperty就可以批量插入并返回主鍵了。 下面是批量插入的Dao層接口 ? ?一注解方式: ? ? ?直接擼代碼: ? ? ?第二種: XML方

    2024年02月09日
    瀏覽(28)
  • 【Spring Boot+Thymeleaf+MyBatis+mysql】實現(xiàn)電子商務(wù)平臺實戰(zhàn)(附源碼)持續(xù)更新~~ 包括sql語句、java、html代碼

    【Spring Boot+Thymeleaf+MyBatis+mysql】實現(xiàn)電子商務(wù)平臺實戰(zhàn)(附源碼)持續(xù)更新~~ 包括sql語句、java、html代碼

    源碼請點贊關(guān)注收藏后評論區(qū)留言和私信博主 開發(fā)環(huán)境:Web服務(wù)器使用Servlet容器,數(shù)據(jù)庫采用mysql,集成開發(fā)環(huán)境為Spring Tool Suite(STS) 電子商務(wù)平臺分為兩個子系統(tǒng) 一個是后臺管理系統(tǒng) 一個是電子商務(wù)系統(tǒng),下面分別講解著兩個子系統(tǒng)的功能需要與模塊劃分 1:后臺管理子

    2024年02月09日
    瀏覽(23)
  • [Spring Boot + MyBatis + MySQL框架搭建]

    目錄 ??創(chuàng)建一個新的Spring Boot項目 ??配置文件 ??application.properties配置: ??創(chuàng)建實體類 ??創(chuàng)建Mapper接口 ??創(chuàng)建Mapper XML文件 ??創(chuàng)建Service和Controller ??創(chuàng)建一個Controller類,用于處理HTTP請求和響應(yīng)。在src/main/java目錄下創(chuàng)建一個名為“com.example.demo.controller”的包,并在其中

    2024年02月11日
    瀏覽(49)
  • Mybatis批量插入

    使用Mybatis框架批量插入的3種方法:多次調(diào)用insert方法、foreach標簽、batch模式 后端java代碼:

    2024年02月12日
    瀏覽(18)
  • Mybatis批量插入方式有哪些

    MyBatis批量插入有多種寫法,最后博主總結(jié)一些常見的批量插入寫法供大家參考 使用XML配置文件進行批量插入:在XML映射文件中使用 insert 標簽,并通過 foreach 標簽迭代批量數(shù)據(jù),然后在SQL語句中使用 VALUES 。 使用Java注解進行批量插入:在實體類上使用 @Insert 注解,并

    2024年02月11日
    瀏覽(20)
  • MyBatis的五種批量插入

    MyBatis的五種批量插入

    一.直接循環(huán)插入 最終耗時:14s多 二.關(guān)閉MySql自動提交,手動進行循環(huán)插入提交 平均:0.12s 第三種:用List集合的方式插入數(shù)據(jù)庫(推薦) 第四種: MyBatis-Plus提供的SaveBatch方法 直接報錯: 看報錯信息: 長串:Servlet.service() for servlet [dispatcherServlet] in context with path [] threw excep

    2024年03月15日
    瀏覽(17)
  • Mybatis批量插入/更新性能優(yōu)化思路

    ????????最近在做數(shù)據(jù)寫入服務(wù)的性能優(yōu)化,主要是基于Mybatis-Plus實現(xiàn)一套批量寫數(shù)據(jù)的服務(wù),不過該服務(wù)是支持整個平臺所有需要持久化的業(yè)務(wù)實體。所以這種服務(wù)不僅僅有insert操作還有update的操作。根據(jù)以往的MySQL數(shù)據(jù)庫寫入經(jīng)驗,主要總結(jié)了兩套批量插入、批量插入

    2024年04月25日
    瀏覽(23)
  • Mybatis 中傳入List實現(xiàn) 批量插入、批量更新、批量刪除

    Mybatis 中傳入List實現(xiàn) 批量插入、批量更新、批量刪除

    個人收藏使用 文章來自Mybatis 中傳入List實現(xiàn) 批量插入、批量更新、批量刪除 - chelsey3tsf - 博客園 (cnblogs.com) 1. 批量插入 : Mapper層: 對應(yīng)的mapper.xml: 如果List數(shù)據(jù)量比較大,可以考慮將List分批次插入 2. 批量更新: 批量更新只提供更新單個字段的,因為更新多個字段無論哪種

    2024年02月11日
    瀏覽(28)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包