<big id="yeiyz"><ruby id="yeiyz"></ruby></big>
    <track id="yeiyz"></track>
    <track id="yeiyz"></track>
    <p id="yeiyz"><del id="yeiyz"></del></p><td id="yeiyz"><option id="yeiyz"></option></td>
    1. <p id="yeiyz"></p>

      <td id="yeiyz"></td>

      java在service層需要每個方法上都加上拋出異常嗎?

      malie0 發布于 昨天 12:01
      閱讀 209
      收藏 0

      默認spring事務拋出異常回滾只會是runtimeException,有些異常沒法直接回滾,需要自己定義回滾的異常類,需要在方法的異常注釋里寫回滾的異常類型,同時如果方法里沒加上throws Exception的話非runtimeException也不會回滾,不知道大家公司里代碼規范會不會強制要求方法都加上異常的處理?我看了下阿里的代碼規范并沒有這部分的規定,但是我感覺如果不加異常控制的話碰到非runtimeException可能就沒法回滾了。

      加載中
      0
      魔力貓
      魔力貓

      非RuntimeException異常,都是編譯器強制讓你處理的。你不處理能編譯過得去么。

      0
      起個起個名字都難
      起個起個名字都難

      @Transactional默認捕獲RunTimeException異常,如果自定義異常A繼承Exception,并且不指定rollback=Exception.class,這樣就捕獲不到A異常了,所以要加上rollback=Exception.class。但是我沒試過非Exception異常回滾的情況,有一次因為JDK版本緣故,拋出了非Exception異常,導致沒有錯誤信息輸出。

      返回頂部
      頂部
      聚看影院