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

mybatis-plus使用updateBatchById小記

這篇具有很好參考價(jià)值的文章主要介紹了mybatis-plus使用updateBatchById小記。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。


//    @Transactional(rollbackFor = Exception.class)
    public Boolean test() {
        List<StaffInfo> staffInfos = this.list();
        staffInfos = staffInfos.stream().map(staffInfo -> {
            if(staffInfo.getNumber().equals("0132791")) {  //如果number=0132791,則把元素設(shè)置成null,制造exception
                staffInfo = null;
                return staffInfo;
            }else{
                staffInfo.setEntryTime(0L);
                return staffInfo;
            }
        }).collect(Collectors.toList());
      return   this.updateBatchById(staffInfos);
//        staffInfos.forEach(staffInfo -> {
//            this.updateById(staffInfo);
//        });
//        return true;
    }

過程?

staff_info表里,我通過sql把entry_time字段先設(shè)置成2,然后再通過代碼設(shè)置成0,設(shè)置成2的時(shí)候一共有483條數(shù)據(jù),然后通過代碼修改的時(shí)候,我把number=0132791的數(shù)據(jù)設(shè)置成null,即更新這一條數(shù)據(jù)肯定會(huì)報(bào)錯(cuò),通過debug我知道number=2這條數(shù)據(jù)在更新的list中處于index=141的位置,所以在number=0132791之后待更新的數(shù)據(jù)還有483-141=342條數(shù)據(jù),如果是通過代碼更新前

mybatisplus updatebatchbyid,mybatis-plus,java,開發(fā)語言

第一種情況: 不加@Transactional注解,使用updateById,一條一條數(shù)據(jù)更新

如下圖:很明顯,在報(bào)錯(cuò)位置之后的記錄里都沒有被更新,報(bào)錯(cuò)位置之前的都被更新了【報(bào)錯(cuò)之前已經(jīng)提交了事務(wù)】?,報(bào)錯(cuò)之后程序不再運(yùn)行,故后邊數(shù)據(jù)沒更新

?mybatisplus updatebatchbyid,mybatis-plus,java,開發(fā)語言

第二種情況: 加@Transactional注解,使用updateById,一條一條數(shù)據(jù)更新?

?都沒有被更新,因?yàn)榧恿耸聞?wù)之后,是在調(diào)用事務(wù)的方法上執(zhí)行完成之后,才會(huì)提交事務(wù),最終因?yàn)閳?bào)錯(cuò),方法沒有執(zhí)行完,所以事務(wù)沒有被提交

mybatisplus updatebatchbyid,mybatis-plus,java,開發(fā)語言

第三種情況: 不加@Transactional注解,使用updateBatchById,批量更新

??都沒有被更新,因?yàn)榕扛率情_啟了一個(gè)事務(wù),然后統(tǒng)一提交,最后沒提交成功

第四種情況: 加@Transactional注解,使用updateBatchById,批量更新?

和情況3相同,都沒有被更新,全部回滾?文章來源地址http://www.zghlxwxcb.cn/news/detail-532741.html

純粹為了自己記錄

到了這里,關(guān)于mybatis-plus使用updateBatchById小記的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • mybatis-plus分頁total為0,分頁失效,mybatis-plus多租戶插件使用

    背景:項(xiàng)目使用mybatis分頁插件不生效,以及多租戶使用時(shí)讀取配置異常 多租戶插件使用遇到的問題: 最開始在MyTenantLineHandler中使用 @Value(\\\"${tables}\\\"),服務(wù)啟動(dòng)時(shí)能從配置中心拉取到配置,但在運(yùn)行時(shí)獲取到的值為空,試了很多方法都不生效,后面將配置中心的配置在調(diào)用My

    2024年02月06日
    瀏覽(22)
  • Mybatis-plus的使用

    Mybatis-plus的使用 一、簡介 Mybatis-plus的基于mybatis的,簡化了單表mybatis的操作。 注意:它并沒有提升性能,只是簡化了開發(fā)過程。 二、在springboot中的基本使用 1、導(dǎo)入依賴 2、添加相應(yīng)的數(shù)據(jù)庫配置(application.properties) 3、在Application類上添加dao接口的路徑掃描 4、編寫實(shí)體類

    2024年02月09日
    瀏覽(20)
  • Mybatis-plus框架使用配置

    MyBatis-Plus(簡稱 MP)是一個(gè)基于 MyBatis 的增強(qiáng)工具,它對(duì) Mybatis 的基礎(chǔ)功能進(jìn)行了增強(qiáng),但未做任何改變。使得我們可以可以在 Mybatis 開發(fā)的項(xiàng)目上直接進(jìn)行升級(jí)為 Mybatis-plus,正如它對(duì)自己的定位,它能夠幫助我們進(jìn)一步簡化開發(fā)過程,提高開發(fā)效率。 Mybatis-Plus 其實(shí)可以看

    2024年02月09日
    瀏覽(23)
  • Mybatis-Plus使用方法

    MyBatis-Plus 提供了豐富的增強(qiáng)版的 CRUD 方法,使得開發(fā)者能夠更簡潔、高效地進(jìn)行數(shù)據(jù)庫操作。以下是如何使用 MyBatis-Plus 自帶的增強(qiáng)版 CRUD 方法的基本步驟: 添加依賴 首先,確保你的 Maven 項(xiàng)目中已經(jīng)添加了 MyBatis-Plus 的相關(guān)依賴,包括核心依賴和數(shù)據(jù)庫驅(qū)動(dòng)依賴。 xml復(fù)制代

    2024年04月11日
    瀏覽(19)
  • mybatis-plus與mybatis同時(shí)使用別名問題

    mybatis-plus與mybatis同時(shí)使用別名問題

    在整合mybatis和mybatis-plus的時(shí)候發(fā)現(xiàn)一個(gè)小坑,單獨(dú)使用mybatis,配置別名如下: XML映射文件如下: 單元測(cè)試發(fā)現(xiàn)沒有問題 添加mybatis-plus依賴后,單元測(cè)試報(bào)錯(cuò): 顯示無法解析XML映射文件中的student 解決辦法:要把配置文件里的別名配置改成mybatis-plus的配置,如下: 區(qū)別

    2024年04月13日
    瀏覽(24)
  • Mybatis-Plus 使用隱患,太坑了!

    Mybatis-Plus 使用隱患,太坑了!

    作者:糊涂碼 鏈接:https://juejin.cn/post/7156428078061895710 MP 從出現(xiàn)就一直有爭議 感覺一直 都存在兩種聲音 很方便啊 通過函數(shù)自動(dòng)拼接Sql 不需要去XML 再去使用標(biāo)簽 之前一分鐘寫好的Sql 現(xiàn)在一秒鐘就能寫好 簡直不要太方便 侵入Service層 不好維護(hù) 可讀性差 代碼耦合 效率不行

    2024年02月05日
    瀏覽(17)
  • mybatis-plus的一些使用案例

    (1)需求分析 在創(chuàng)建和修改的時(shí)候,需要判斷庫名是否重復(fù),而庫名是全英文,所以要忽略字母大小寫,大小寫不同被認(rèn)為是相同的字母 (2)解決思路 把數(shù)據(jù)庫里的字段,還有要查的條件字段,都轉(zhuǎn)成小寫或者大寫,然后再判斷是否相同 (3)代碼案例 (1)Api接口層 參數(shù)

    2024年02月13日
    瀏覽(20)
  • 使用Mybatis-plus清空表數(shù)據(jù)

    方法一: ?方法二: 直接使用自帶的remove接口 ,同時(shí)使用QueryWrapper參數(shù)如: 引申一下?Mybatis-plus這個(gè)好用的框架: 我們知道 MyBatis 是一個(gè)基于 java 的持久層框架,它內(nèi)部封裝了 jdbc,極大提高了我們的開發(fā)效率。 但是使用 Mybatis 開發(fā)也有很多痛點(diǎn): 每個(gè) Dao 接口都需要自己

    2023年04月09日
    瀏覽(18)
  • 使用Mybatis-Plus問題解答

    使用Mybatis-Plus問題解答

    我們使用一個(gè)新的框架難免會(huì)遇到各種問題,當(dāng)然使用這款國產(chǎn)的優(yōu)秀的Mybatis-Plus框架也不例外,下面我就給大家列舉一下使用Mybatis-Plus可能遇到的一些問題,并做一下一一的解答。 1:如何排除非表的字段 (這個(gè)問題一定要注意,我們Java中寫的Entity類的屬性是和表的字段一

    2024年02月08日
    瀏覽(23)
  • SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用)

    SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用)

    1.需求分析 2.數(shù)據(jù)庫表設(shè)計(jì) 3.數(shù)據(jù)庫環(huán)境配置 1.新建maven項(xiàng)目 2.pom.xml 引入依賴 3.application.yml 配置數(shù)據(jù)源 數(shù)據(jù)庫名 用戶名 密碼 驅(qū)動(dòng)是mysql8的(因?yàn)樯厦媸褂昧税姹局俨茫?4.Application.java 編寫啟動(dòng)類 5.測(cè)試 6.配置類切換druid數(shù)據(jù)源 7.測(cè)試數(shù)據(jù)源是否成功切換 4.Mybatis基礎(chǔ)配置 1

    2024年03月20日
    瀏覽(32)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包