我正在尝试使用IBM的JSR352 Implementation开发Java批处理程序。由于批处理作业涉及迭代处理大量记录,因此我选择将其实现为块处理作业。
这项工作涉及3个步骤,对文件1中的每个记录不断重复
从处理器到编写器,我可以返回所有行号 发现了关键文本匹配。但是,没有RandomAccess文件,如何 我可以从我的Writer更新文件2中的那些特定行号吗?
因为我只能使用these Input/Outputstreams 文件处理我无法拆分Lookup&之间更新逻辑 处理器和作家班。我怎样才能做到这一点?
这是因为代码将在Windows机器中开发,但最终在大型机(z / os)服务器中执行。
答案 0 :(得分:1)
处理器在技术上是可选的,因此您可以仅在writer类中合并查找/更新逻辑。这可能有所帮助。
在z / OS上,使用VSAM数据集(也可通过JZOS ZFile API访问)更容易。但是在Windows上开发/测试很难。我想你可以将ZFile调用保持独立,并且在Windows上用一些可以很好地用于测试目的的操纵模拟替换它们。
答案 1 :(得分:0)
我最终不得不放弃基于JZOS FileFactory的方法,并使用JZOS ZFile的locate API来查找特定的行(使用键)并从编写器中更新它。