欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

如何使用Java?@Transactional指定回滾條件

這篇“如何使用Java @Transactional指定回滾條件”文章的知識(shí)點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“如何使用Java @Transactional指定回滾條件”文章吧。

創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供全州網(wǎng)站建設(shè)、全州做網(wǎng)站、全州網(wǎng)站設(shè)計(jì)、全州網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、全州企業(yè)網(wǎng)站模板建站服務(wù),10年全州做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。

異常分類

  • 可查的異常(checked exceptions):Exception下除了RuntimeException外的異常

  • 不可查的異常(unchecked exceptions):RuntimeException及其子類和錯(cuò)誤(Error)

@Transactional注解屬性詳解

屬性類型描述
valueString可選的限定描述符,指定使用的事務(wù)管理器
propagationenum: Propagation可選的事務(wù)傳播行為設(shè)置
isolationenum: Isolation可選的事務(wù)隔離級(jí)別設(shè)置
readOnlyboolean讀寫或只讀事務(wù),默認(rèn)讀寫
timeoutint (in seconds granularity)事務(wù)超時(shí)時(shí)間設(shè)置
rollbackForClass對(duì)象數(shù)組,必須繼承自Throwable導(dǎo)致事務(wù)回滾的異常類數(shù)組
rollbackForClassName類名數(shù)組,必須繼承自Throwable導(dǎo)致事務(wù)回滾的異常類名字?jǐn)?shù)組
noRollbackForClass對(duì)象數(shù)組,必須繼承自Throwable不會(huì)導(dǎo)致事務(wù)回滾的異常類數(shù)組
noRollbackForClassName類名數(shù)組,必須繼承自Throwable不會(huì)導(dǎo)致事務(wù)回滾的異常類名字?jǐn)?shù)

@Transactional

使用@Transaction注解時(shí),阿里巴巴代碼規(guī)范插件會(huì)提醒需要指定rollbackFor以顯示的rollback

如何使用Java?@Transactional指定回滾條件

默認(rèn)情況下,Spring框架在使用@Transaction處理事務(wù)時(shí)默認(rèn)只在拋出運(yùn)行時(shí)異常unchecked exceptions時(shí)才會(huì)事務(wù)回滾。也就是說,當(dāng)拋出個(gè)RuntimeException 或其子類例的實(shí)例時(shí),從事務(wù)方法中拋出的Checked exceptions將不被標(biāo)識(shí)進(jìn)行事務(wù)回滾。

  • 讓checked異常回滾:在整個(gè)方法前加上 @Transactional(rollbackOn=Exception.class)

  • 讓unchecked異常不回滾: @Transactional(dontRollbackOn=RunTimeException.class)

  • 不需要事務(wù)管理的(只查詢的)方法:@Transactional(propagation=Propagation.NOT_SUPPORTED)

注意

  • 如果異常被try-catch了,事務(wù)就不會(huì)回滾,如果想讓事務(wù)回滾必須再往外拋try{}catch{throw Exception}。

  • Spring團(tuán)隊(duì)的建議在具體的類(或類的方法)上使用 @Transactional 注解,而不要使用在類所要實(shí)現(xiàn)的任何接口上。也可以在接口上使用 @Transactional 注解,但是這種情況需要設(shè)置基于接口的代理時(shí)才生效

  • @Transactional 注解標(biāo)識(shí)的方法,建議處理過程盡量的簡(jiǎn)單。尤其是帶鎖的事務(wù)方法,能不放在事務(wù)里面的最好不要放在事務(wù)里面。可以將常規(guī)的數(shù)據(jù)庫(kù)查詢操作放在事務(wù)前面進(jìn)行,而將增、刪、改等操作放在事務(wù)中

代碼

@Slf4j
@Service
public class MemberService {

    @Autowired
    private MemberMapper memberMapper;

    @Transactional
    public Integer insert(MemberEntity memberEntity) {
        Integer insertResult = 0;
        try {
            insertResult = memberMapper.save(memberEntity);
            log.info("insertResult:{}", insertResult);
            int result = 1 / memberEntity.getAge();
        } catch (Exception e) {
            log.error("errorMsg:{}", e.getMessage());
            //回滾
            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
        }
        return insertResult;
    }
}

如上標(biāo)紅代碼,如果不寫的話,事務(wù)是不會(huì)回滾的。因?yàn)槭聞?wù)被 catch 捕獲到了,所以只能手動(dòng)的進(jìn)行事務(wù)回滾。

以上就是關(guān)于“如何使用Java @Transactional指定回滾條件”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對(duì)大家有幫助,若想了解更多相關(guān)的知識(shí)內(nèi)容,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

分享名稱:如何使用Java?@Transactional指定回滾條件
轉(zhuǎn)載來源:http://aaarwkj.com/article14/psopge.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)網(wǎng)站建設(shè)、面包屑導(dǎo)航外貿(mào)建站、動(dòng)態(tài)網(wǎng)站、網(wǎng)站改版

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營(yíng)
日韩av亚洲在线观看| 熟女中文字幕亚洲一区二区| 四虎最新在线播放视频| 日韩中文字幕久久中文字幕| 国内久久婷婷综合五月趴| 国产高清成人小视频在线| 亚洲性感人妻系列网站| 国产黄片一区二区不卡| 日本中文字幕黄色人妻| 天天干夜夜操操操操| 久久国产精品久久国产精品| 黄色午夜福利在线观看| 亚洲精品国产精品粉嫩| 亚洲av成人三区国产精品| 国产精品成人大片在线播放| 日韩黄片一区二区三区| 亚洲一区二区三区精品乱码| 欧美精品一区二区三区狠狠| 日本中文字幕免费一区| 黄色国产一区二区三区| 亚洲一区二区三区观看视频| 在线 | 一区二区三区四区| 日韩av熟女中文字幕| 亚洲欧美日韩有码一区| 美女视频一区二区三区在线观看 | 欧美性生活真实的视频| 人人妻人人澡人人爽精品日本| a一级成人插少妇的逼| 午夜av一区二区三区| 中文字幕乱码伊人三级| 四虎国产精品久久久久久网址 | 少妇高潮惨叫久久麻豆传| 国产精品久久久天美传媒| 欧美日韩一区二区三区大片| 国产自拍免费在线观看视频| 91九色国产在线播放| 人妻91一区二区三区| 日本一区二区三区视频| 精品久久亚洲一区二区欧美| 亚洲第一中文字幕久久| 日韩一级毛一片欧美一级|