V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
guyeuro
V2EX  ›  问与答

涉及到事务的方法,如果有非正常(或者期望)的状况,是不是一定要抛异常?

  •  
  •   guyeuro · 2017-06-25 20:38:01 +08:00 · 1105 次点击
    这是一个创建于 2510 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在 java 中 一般来说有非正常(或者期望)的状况 有两种方案 一种是造一个 Result 类 里面包含错误 /非期望信息,错误码等 返回一个 Result 实例 一种就是抛异常

    在涉及到事务的方法里,是不是一定要抛异常 这样才能回滚 如果只是返回一个 Result 实例 事务就不能回滚,然后产生问题

    2 条回复    2017-06-26 08:44:20 +08:00
    mr253727942
        1
    mr253727942  
       2017-06-25 20:44:55 +08:00 via Android
    是的 而且一般得是 runtime 异常
    zhuyao
        2
    zhuyao  
       2017-06-26 08:44:20 +08:00
    你可以手动抛异常,也可以 TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2542 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 16:10 · PVG 00:10 · LAX 09:10 · JFK 12:10
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.