Spring批处理插入Oracle数据库问题

时间:2018-11-15 14:35:53

标签: oracle spring-batch

我有一个春季批处理示例,在其中我从平面文件读取并写入Oracle数据库。当我第一次使用Oracle开发人员创建oracle表时,该示例运行良好,但是当我删除所有记录并运行spring批处理示例时,应用程序处于运行模式(在插入表时停止),并且未完成直到我手动(使用oracle SQL Developer)在表中添加一条记录,这样它才能继续运行并完美完成。那是我在oracle中使用的表有问题吗(我不是oracle数据库的专家)。 有任何帮助或建议吗?

1 个答案:

答案 0 :(得分:1)

从应用程序运行spring批处理时,是否要提交更改?在Oracle中进行大型批处理操作时,数据库将在表上放置一个锁,直到事务为committedrolled back。如果您在应用程序内部运行批处理时没有这样做,那么我猜您在应用程序端所做的就是在表上放置一个锁,并且直到您手动{{1}通过向表中添加一条记录来进行更改。尝试在申请流程结束时添加一个commit点进行测试。