开发者社区> 问答> 正文

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

"

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

进行手动回滚时调用了

TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();

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

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

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

"

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

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

    ######

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

    ######

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

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

相关电子书

更多
Java Spring Boot开发实战系列课程【第6讲】:Spring Boot 2.0实战MyBatis与优化(Java面试题) 立即下载
Spring Cloud 微服务核心组件集 mica 的设计思路 立即下载
workshop专场-微服务专场-开发者动手实践营-微服务-Spring Cloud Alibaba 微服务全家桶体验 立即下载