【问题标题】:What exception would be thrown in a @Transactional method if a database connection is unavailable?如果数据库连接不可用,@Transactional 方法会抛出什么异常?
【发布时间】:2012-12-05 13:58:52
【问题描述】:

@org.springframework.transaction.annotation.Transactional 用于

<bean class="org.springframework.orm.jpa.JpaTransactionManager" id="txMgr">
    <property name="entityManagerFactory" ref="emFactory"/>
</bean>

<tx:annotation-driven mode="aspectj" transaction-manager="txMgr"/>

进入@Transactional方法会抛出什么异常,如果有的话?

【问题讨论】:

  • 取决于所使用的连接器。我敢打赌,它会包含“数据库连接不可用”之类的内容
  • 我可以告诉你的是它将以org.springframework.transaction.CannotCreateTransactionException开头。

标签: java spring jpa


【解决方案1】:

它将成为 RuntimeException 的子类。

这必须在比您的服务更高的级别进行管理。 如果数据库是KO,回滚是无关紧要的^^。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-11-13
    • 2011-03-08
    • 2021-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-17
    相关资源
    最近更新 更多