spring事务回滚 异常处理,spring支持的事务功能包括 事务回滚

  spring事务回滚 异常处理,spring支持的事务功能包括 事务回滚

  

目录

spring报告了服务层方法中的错误。事务将不会回滚。服务手动回滚问题的解决方案

 

  00-1010 @ transactional(roll back for={ exception . class })public void insert data()抛出异常{//业务代码1 business 1();//业务代码2 Business 2();//业务代码3 Business 3();}public void business1() {//此处省略业务操作}public void business2() {//此处省略业务操作}public void business3() {//此处省略业务操作}上述代码在服务层执行insertData方法时,business3中的代码执行错误,business1和business2中的操作不回滚。

  00-1010方法一:捕捉服务方法中的异常,并向外抛出运行时异常。

  @ transactional(roll back for={ exception . class })public void insert data()抛出异常{ try {//business code 1 business 1();//业务代码2 Business 2();//业务代码3 Business 3();} catch(Exception e){ throw new runtime Exception(e);} }方法二:在服务方法中捕获异常,并手动回滚事务。

  00-1010,如果服务层的管理是为spring配置的。

  在某些业务中,需要回滚。通常,会引发运行时异常。

  抛出新的runtime exception();在这种情况下,代码就结束了。如果要给用户返回一个错误信息,就不方便了。此时,您可以添加以下代码,并在catch中手动回滚。

  transactionaspectsupport . currenttransactionstatus()。setRollbackOnly();这样既能正常返回错误信息,又能保持事物的原子性。

  以上个人经验,希望能给大家一个参考,也希望大家能支持盛行的IT。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • spring编程式事务处理,spring编程事务
  • spring编程式事务处理,spring编程事务,详解Spring学习之编程式事务管理
  • spring的核心功能模块有几个,列举一些重要的spring模块
  • spring的核心功能模块有几个,列举一些重要的spring模块,七个Spring核心模块详解
  • spring注解和springmvc的注解,SpringMVC常用注解
  • spring注解和springmvc的注解,SpringMVC常用注解,详解springmvc常用5种注解
  • spring实现ioc的四种方法,spring的ioc的三种实现方式
  • spring实现ioc的四种方法,spring的ioc的三种实现方式,简单实现Spring的IOC原理详解
  • spring事务失效问题分析及解决方案怎么做,spring 事务失效情况
  • spring事务失效问题分析及解决方案怎么做,spring 事务失效情况,Spring事务失效问题分析及解决方案
  • spring5.0新特性,spring4新特性
  • spring5.0新特性,spring4新特性,spring5新特性全面介绍
  • spring ioc以及aop原理,springmvc aop原理
  • spring ioc以及aop原理,springmvc aop原理,深入浅析Spring 的aop实现原理
  • Spring cloud网关,spring cloud zuul作用
  • 留言与评论(共有 条评论)
       
    验证码: