java - 春季批量回滚所有步骤以防出现异常
问题描述
Job lensJob(JobBuilderFactory jbf, StepBuilderFactory sbf) throws Exception{
return jbf
.get("myJob")
.incrementer(new RunIdIncrementer())
.listener(jobResultListener)
.start(step1Lens())
.next(step2Lens())
.build();
}
所以在我的情况下,我的工作包含从同一个文件中读取并插入到不同的数据库表中的 2 个步骤,我正在寻找的是一种在抛出异常时自动回滚所有步骤的方法,以防插入一些记录自动删除
解决方案
这是不可能的,没有跨步交易。
从同一个文件中读取并插入到不同的表中
您可以将两个编写器(每个表一个编写器)配置为CompositeItemWriter
. 使用此配置,事务回滚将回滚写入两个表中的项目。
希望这可以帮助。
推荐阅读
- javascript - 是否可以在 vuetify 数据表上调用 REST API 进行数据加载、搜索、分页和排序?
- java - 选择多个图像并插入多个不同的 imageViews
- postgresql - 如何将regclass转换为不带引号的字符串?
- c - 将值分配给结构指针的语法
- javascript - Splice() deletes wrong element in array
- python - 为什么 arange 和 linspace 不会产生相等的对象?
- sql-server - 如何使用代码优先将 Id 降序保存在数据库中?
- r - 将 DateVector 元素与 Date 进行比较的 Rcpp 错误
- php - PDO::FETCH_ASSOC 问题
- java - 我可以在我的控制器中创建一个不返回任何内容的方法,只需从服务类调用 java 方法吗?