我正在尝试使用IBM的JSR352实现开发一个Java批处理程序。由于批处理作业涉及迭代处理大量记录,所以我选择将其实现为块处理作业。
此工作涉及三个步骤,对文件1中的每个记录保持重复。
从处理器到写入程序,我可以返回所有找到关键文本匹配的行号。但是,如果没有RandomAccess文件,我如何从我的作者更新文件2中的特定行号?
,因为我被限制只使用 https://www.ibm.com/support/knowledgecenter/en/SSYKE2_7.1.0/com.ibm.java.zsecurity.api.71.doc/com.ibm.jzos/com/ibm/jzos/FileFactory.html#newBufferedWriter(java.lang.String) 来处理文件,所以我无法在处理器和编写类之间分割查找和更新逻辑。我怎样才能做到这一点?
这是因为代码将在windows机器中开发,但最终在大型机(z/os)服务器上执行。
发布于 2017-08-24 17:26:25
处理器在技术上是可选的,因此您可以仅在编写类中合并查找/更新逻辑。也许能帮上忙。
在z/OS上,这更容易使用VSAM数据集(也可以通过JZOS ZFile API访问)。但是,在Windows上进行开发/测试是很困难的。我认为您可以将ZFile调用保持单独,并在Windows上用一些已安装好的模拟来替换它们,这样就可以很好地进行测试。
发布于 2017-09-18 08:42:08
最后,我不得不放弃基于JZOS FileFactory的方法,使用JZOS的locate来查找特定的行(使用键),并从作者那里更新它。
https://stackoverflow.com/questions/45862640
复制相似问题