当前位置: 首页 > 知识库问答 >
问题:

在exception和RuntimeException中的rollbackfor之间应该选择什么?

潘皓
2023-03-14

当我在Exception中使用transaction时,我使用@Transactional(rollbackFor=Exception.class)。

共有1个答案

羊城
2023-03-14

Spring为回滚到runtimeException提供了与EJB相同的内置支持。但是,添加对应用程序异常(选中的异常)的回滚支持可以如下定义。

@Transactional(rollbackFor = BadRequestException.class)

Spring文档:“虽然Spring对于声明性事务管理的默认行为遵循EJB约定(回滚仅在未检查的异常情况下是自动的),但是定制它通常很有用”。来源

 类似资料:
  • 问题内容: 我有以下课程。 和 我对自定义异常何时应该扩展以及何时必须扩展感到困惑。您能否解释一下直接扩展是否有任何缺点? 谢谢! 问题答案: 不选中RuntimeException,而选中Exception(调用代码必须处理它们)。 如果您 想取消选中 自定义异常,则应扩展 它, 否则请使用扩展它。 对于未经检查的异常,不需要调用代码方法在throws子句中声明在方法执行期间可能抛出但未被捕获的

  • 问题内容: AStringis-aCharSequence。Java库中有许多方法可以接受,因此它们的操作范围更广。某些类具有方法(例如),并且还使用等效方法(例如)实现。 如果我正在编写一个委托给此类的类,并且需要一些文本输入,则可以将输入选择为a 或a 。通过为客户提供更多选择,选择后一种将使类更灵活。但是我看不到有太多这样做的代码:文本参数几乎总是a 而不是a 。使用不利吗?有表现上的打击吗

  • 问题内容: 有人可以建议当今这些库的最佳用途是什么?仅仅是GUI,还是它们也具有数据库,XML,网络,线程等支持? 我正在阅读有关它们的内容,并考虑开始学习/使用其中之一。 最常见的是什么?它们之间有什么区别?为什么要选择一个? 问题答案: 因为您似乎主要针对Linux,所以选择主要取决于您要使用的编程语言。 如果您使用C编写代码,那么显然可以使用GTK + 如果您使用C 编写代码,请使用Qt,否

  • 问题内容: Mac OS-X 安卓系统 带有ADT的Eclipse SQLite的 我是创建Android应用程序的新手,但Ive对此进行了深入研究,但是却一无所获。我需要查询我的SQLite数据库以返回2个日期之间的所有行。到目前为止,我从研究中了解到,Android的SQLite数据库中没有DateTime列,因此我必须将其保存为文本列。但是我认为问题出在尝试比较字符串,但我想不出解决方法。这

  • 问题内容: 由于类,结构和枚举都具有构造函数,属性和计算属性,因此在它们之间进行选择时应如何推理? 问题答案: ChristopheD和Jack Jack的回答很好,但是我觉得他们没有触及枚举,或者错过了它们的重要性。Swift枚举(即将)是代数数据类型的完整实现。传统上,类和结构用于以面向对象的语言对数据进行建模,但是枚举通常仅限于用作将变量的值限制为有限可能性的便捷方法。例如(C ++): S

  • 问题内容: 该事务是否会回滚,或者是否还需要在批注中包含RuntimeException.class? 问题答案: 无需包括在列表中。即使您不提及它,它也会处理。 我已经尝试了jdbcTemplate:-