开发者社区> 问答> 正文

spring mybatis 如果回滚不抛异常-java报错

"

项目中,需要自己根据逻辑进行手动回滚,使用的spring+mybatis注解事物管理

进行手动回滚时调用了

TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();

这样子是可用做到随时控制回滚,但是问题来了

我们进行回滚的时候,代表我们的本次事物是无效的,我们需要告诉前端为什么,而不是直接抛一个异常出来给前端;而且我可能有N中情况需要进行回滚,就需要有N种应答回给前端

现在求一个答案:如何在手动调用上面那句回滚代码后,不抛异常给前端,而且返回我们设置的return的内容

"

展开
收起
montos 2020-05-31 22:57:43 691 0
1 条回答
写回答
取消 提交回答
  • 自定义一个异常类,并设置两个属性code和msg,继承runtimeexception,回滚的时候抛出这个异常类并set好信息,上层捕获,取值,即可######

    使用了SpringMVC了吗 ?如果使用了就配置一个全局异常拦截器,在异常拦截器里面做处理~

    ######

    手动回滚,抛异常,然后全局异常捕捉,返回

    ######

    抛一个自定义异常类回去!

    2020-05-31 22:57:54
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载