我是Spring批处理的新手,目前正在使用多资源项目读取多个文件,并使用复合项目写入数据库的不同表中,每个文件包含不同数量的行。我的问题:如果一行未能插入数据库,是否可以对插入此文件的所有行进行回滚?有没有办法做回滚?
1 回答
一只斗牛犬
TA贡献1784条经验 获得超2个赞
Spring 批处理以块的形式读取和写入数据。假设您有 1000 条记录,块大小为 100 条,并且您正在执行批量插入。对于每个区块(100 个项目),Spring 批处理将打开一个事务,插入 100 条记录并提交该事务。如果发生任何错误,则该特定块(100 条记录)将被回滚。但是,所有先前已插入的块都无法回滚。
添加回答
举报
0/150
提交
取消