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

系列四十七、Spring的事務(wù)傳播行為案例演示(七)#NOT_SUPPORTED

這篇具有很好參考價(jià)值的文章主要介紹了系列四十七、Spring的事務(wù)傳播行為案例演示(七)#NOT_SUPPORTED。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、演示Spring的傳播行為(NOT_SUPPORTED)

1.1、StockServiceImplNOT_SUPPORTED?

/**
 * @Author : 一葉浮萍?xì)w大海
 * @Date: 2023/10/30 15:43
 * @Description: 演示NOT_SUPPORTED的傳播行為
 *      外部不存在事務(wù):不開啟新的事務(wù)
 *      外部存在事務(wù):不用外部的事務(wù)
 */
@Service(value = "stockServiceImplNOTSUPPORTED")
public class StockServiceImplNOT_SUPPORTED extends ServiceImpl<StockMapper, StockDO> implements StockService {

    @Resource
    private StockMapper stockMapper;

    @Resource
    private IntegralService integralServiceImplNOTSUPPORTED;

    /**
     * SUPPORTS的傳播行為
     * @param id
     * @param num
     * 場景一:外部不存在事務(wù)(注釋掉reduceStock的@Transactional注解),內(nèi)部存在事務(wù)(傳播屬性為NOT_SUPPORTED)
     *      預(yù)期結(jié)果:外部普通方法 & 內(nèi)部事務(wù)方法都正常提交
     *      實(shí)際結(jié)果:外部普通方法 & 內(nèi)部事務(wù)方法都正常提交
     *      對(duì)應(yīng)方法:m1()
     *
     * 場景二:外部存在事務(wù)(REQUIRED),內(nèi)部存在事務(wù)(MANDATORY)
     *      預(yù)期結(jié)果:外部事務(wù)方法回滾 & 內(nèi)部事務(wù)方法正常提交
     *      實(shí)際結(jié)果:外部事務(wù)方法回滾 & 內(nèi)部事務(wù)方法正常提交
     *      對(duì)應(yīng)方法:m1()
     * ...
     */
    @Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)
    @Override
    public void reduceStock(Long id, Integer num) {
        m1(id, num);
    }

    private void m1(Long id, Integer num) {
        System.out.println("==============>StockServiceImplNOT_SUPPORTED的m1()執(zhí)行了");
        try {
            // 減庫存
            StockDO dbStock = stockMapper.selectById(id);
            StockDO updateStock = new StockDO();
            BeanUtils.copyProperties(dbStock, updateStock);
            updateStock.setNum(dbStock.getNum() - num);
            stockMapper.updateById(updateStock);

            // 增加積分
            IntegralDO updateIntegral = new IntegralDO();
            updateIntegral.setPreIntegral(0);
            updateIntegral.setCurrentIntegral(1000);
            updateIntegral.setUserId(1L);
            integralServiceImplNOTSUPPORTED.addIntegral(updateIntegral);

            int i = 10 / 0;

        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }


}

1.2、IntegralServiceImplNOT_SUPPORTED?

/**
 * @Author : 一葉浮萍?xì)w大海
 * @Date: 2023/10/30 15:43
 * @Description: 演示NOT_SUPPORTED的傳播行為
 *      外部不存在事務(wù):不開啟新的事務(wù)
 *      外部存在事務(wù):不用外部的事務(wù)
 */
@Service(value = "integralServiceImplNOTSUPPORTED")
public class IntegralServiceImplNOT_SUPPORTED extends ServiceImpl<IntegralMapper, IntegralDO> implements IntegralService {

    @Resource
    private IntegralMapper integralMapper;

    @Transactional(propagation = Propagation.NOT_SUPPORTED,rollbackFor = Exception.class)
    @Override
    public void addIntegral(IntegralDO updateIntegral) {
        m1(updateIntegral);
    }

    private void m1(IntegralDO updateIntegral) {
        try {
            System.out.println("==============>IntegralServiceImplNOT_SUPPORTED的m1()執(zhí)行了");
            integralMapper.insert(updateIntegral);
            int i = 10 / 0;
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }

}

文章來源地址http://www.zghlxwxcb.cn/news/detail-734905.html

到了這里,關(guān)于系列四十七、Spring的事務(wù)傳播行為案例演示(七)#NOT_SUPPORTED的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(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)文章

  • javaee 事務(wù)的傳播行為

    事務(wù)的第一個(gè)方面是傳播行為(propagation behavior)。當(dāng)事務(wù)方法被另一個(gè)事務(wù)方法調(diào)用時(shí),必須指定事務(wù)應(yīng)該如何傳播。例如:方法可能繼續(xù)在現(xiàn)有事務(wù)中運(yùn)行,也可能開啟一個(gè)新事務(wù),并在自己的事務(wù)中運(yùn)行。Spring定義了七種傳播行為: 傳播行為 含義 PROPAGATION_REQUIRED 表示

    2024年02月09日
    瀏覽(16)
  • 聊一聊數(shù)據(jù)庫事務(wù)的那些事(隔離級(jí)別,傳播行為)

    聊一聊數(shù)據(jù)庫事務(wù)的那些事(隔離級(jí)別,傳播行為)

    ? 我們平時(shí)使用事務(wù)的時(shí)候,可能腦子里面想到和事務(wù)有關(guān)的知識(shí)點(diǎn)無非就是,ACID,事務(wù)隔離級(jí)別那一套,使用的事務(wù)也就是是通過注解的形式,或者手動(dòng)開啟事務(wù)。更細(xì)致一點(diǎn)的問題或許沒有深究下去,比如事務(wù)的傳播行為,注解形式和手動(dòng)事務(wù)的區(qū)別等,今天我們就這幾

    2024年02月07日
    瀏覽(22)
  • Spring事務(wù)與事務(wù)傳播

    Spring事務(wù)與事務(wù)傳播

    事務(wù):事務(wù)是一組操作的集合,是不可分割的基本單位,要么全部成功,要么全部失敗 我們?cè)贛ySQL中使用事務(wù)有三步操作:開啟事務(wù),提交事務(wù),回滾事務(wù) 事務(wù)的四大特性(ACID): 原子性、一致性、持久性、隔離性 原子性(Atomicity):一個(gè)事務(wù)的操作,要么全部完成,要么全部不

    2024年02月07日
    瀏覽(22)
  • Spring 事務(wù)和事務(wù)傳播機(jī)制

    Spring 事務(wù)和事務(wù)傳播機(jī)制

    目錄 ??今日良言:生命只有一次,你要活的暢快淋漓 ??一、Sping 事務(wù) 1.Spring 中事務(wù)的實(shí)現(xiàn) 2.Spring 中事務(wù)隔離級(jí)別 ??二、Spring 事務(wù)傳播機(jī)制 1.基本概念 2.詳細(xì)介紹 1.Spring 中事務(wù)的實(shí)現(xiàn) 在MySQL中也有事務(wù),如下鏈接是博主之前寫的關(guān)于MySQL事務(wù)的博客: 如何理解數(shù)據(jù)庫事務(wù)

    2024年02月07日
    瀏覽(22)
  • Spring事務(wù)和事務(wù)傳播機(jī)制(1)

    Spring事務(wù)和事務(wù)傳播機(jī)制(1)

    ??????SSM專欄更新中,各位大佬覺得寫得不錯(cuò),支持一下,感謝了!?????? Spring + Spring MVC + MyBatis_冷兮雪的博客-CSDN博客 在Spring框架中,事務(wù)管理是一種用于維護(hù)數(shù)據(jù)庫操作的一致性和完整性的機(jī)制。Spring事務(wù)管理提供了靈活的方式來處理事務(wù),包括事務(wù)的創(chuàng)建

    2024年02月12日
    瀏覽(26)
  • Spring—事務(wù)及事務(wù)的傳播機(jī)制

    Spring—事務(wù)及事務(wù)的傳播機(jī)制

    將一組操作封裝成一個(gè)執(zhí)行單元, 即這一組操作一同成功 / 一同失敗 舉個(gè)栗子?? 未使用事務(wù) 滑稽老哥給女神轉(zhuǎn)賬 520 由于某種原因, 女神并未收到轉(zhuǎn)賬的 520, 而滑稽老哥卻被扣款 520 使用事務(wù) 滑稽老哥給女神轉(zhuǎn)賬 520 由于某種原因, 女神并未收到轉(zhuǎn)賬的 520 因?yàn)槭褂檬聞?wù), 所以

    2024年02月13日
    瀏覽(23)
  • Spring Boot 事務(wù)和事務(wù)傳播機(jī)制

    Spring Boot 事務(wù)和事務(wù)傳播機(jī)制

    事務(wù)定義 將一組操作封裝成一個(gè)執(zhí)行單元 (封裝到一起),這一組的執(zhí)行具備原子性, 那么就要么全部成功,要么全部失敗. 為什么要用事務(wù)? 比如轉(zhuǎn)賬分為兩個(gè)操作: 第一步操作:A 賬戶-100 元。 第二步操作:B賬戶 +100 元。 如果沒有事務(wù),第一步執(zhí)行成功了,第二步執(zhí)行失敗了,

    2024年02月11日
    瀏覽(25)
  • 【JavaEE進(jìn)階】Spring事務(wù)和事務(wù)傳播機(jī)制

    【JavaEE進(jìn)階】Spring事務(wù)和事務(wù)傳播機(jī)制

    Spring 事務(wù)是 Spring 框架提供的一種機(jī)制,用于 管理數(shù)據(jù)庫操作或其他資源的一組相關(guān)操作 ,以確保它們?cè)谝粋€(gè)原子、一致、可靠和隔離的執(zhí)行單元內(nèi)進(jìn)行。事務(wù)用于維護(hù)數(shù)據(jù)的完整性并支持并發(fā)訪問數(shù)據(jù)庫時(shí)的數(shù)據(jù)一致性。 Spring 事務(wù)的主要特點(diǎn)包括: 原子性(Atomicity):

    2024年02月09日
    瀏覽(22)
  • Spring事務(wù)傳播機(jī)制解析

    在Java的Spring框架中,事務(wù)管理是保證應(yīng)用數(shù)據(jù)一致性和可靠性的關(guān)鍵。Spring提供了靈活的事務(wù)傳播機(jī)制,它定義了事務(wù)邊界,以及在嵌套方法調(diào)用時(shí)如何處理事務(wù)。本文旨在深入探討Spring的事務(wù)傳播行為,幫助開發(fā)者更好地理解和運(yùn)用這一重要特性。 事務(wù)傳播機(jī)制指的是在

    2024年01月16日
    瀏覽(35)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包