在Spring中更改@Transactional的默认设置

时间:2015-01-05 00:20:30

标签: java spring

目前,我们必须为使用rollbackFor=Exception.class注释的应用程序中90%的方法添加@Transactional。我想知道是否有办法在某处将rollbackFor的默认值设置为Exception.class,这样我们就不必每次都明确指定它。

1 个答案:

答案 0 :(得分:3)

由于它是一个注释,标准是编写您自己的自定义注释并将其替换为@Transactional(rollbackFor = Exception.class)。如果使用以下注释进行注释,则无需在任何地方指定rollbackFor,因为它将被隐含。

@Target({ElementType.TYPE, ElementType.ANNOTATION_TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Transactional(rollbackFor = Exception.class)
@Documented
public @interface CustomTransactional {

}