我有一个基于spring Batch的Spring应用程序。默认情况下,spring batch为其步骤(即在读取器、写入器和处理器)引入事务。在某些阶段,我并不真正需要启用事务。因为这些方法没有必要启用事务,所以当我在一个方法中调用两个不同的数据库时,它会给我带来一些运行时错误。
spring提供了什么注释来禁用一组特定方法的事务吗?
或者,在spring batch中有什么东西可以让我完全或声明性地摆脱事务吗?
我甚至对可以全局禁用事务的解决方案持开放态度。任何链接,论文将非常感谢。提前感谢Samir
发布于 2013-08-10 03:57:34
Spring Batch本质上是事务性的。即使您的数据源不是事务性的,JobRepository的语义也需要它。使用Spring Batch和非事务性最接近的就是使用ResourcelessTransactionManager。这个事务管理器本质上是一个无操作的事务管理器,它只是跟踪一个操作是否在一个事务的范围内。
https://stackoverflow.com/questions/18153444
复制相似问题