Spring 批量 GZIP ItemWriter/ItemReader
Spring batch GZIP ItemWriter/ItemReader
我有一个 Spring 启动应用程序,我写了一些 ItemWriter 和 ItemReader,例如 JSON 文件和 CSV 文件。
我想添加一个压缩到 GZIP 和从 GZIP 解压的步骤。
我想知道是否可以像往常一样使用 JavaStreams -
如果我有一些 InputStream 或 OutputStream,我可以用另一个流装饰它(即,另一个流可以在它的构造函数中获取它并使用它),这样可以轻松获得所有流的功能。
可以用 Spring ItemWriter 和 ItemReader 来完成吗?
否则,向现有写入器和读取器添加压缩和解压缩的最佳方法是什么?
鉴于目前还没有其他答案...让我提出一个解决方案...
使用 Decorator Pattern 在 ItemWriter
和 ItemReader
中分别压缩或解压缩 output/input 并不难。但是,使用装饰 ItemWriter
和 ItemReader
的作业的 可重启性 可能会受到影响。
...what's the best way to add compressing and decompressing to an
existing writers and readers?
我建议一个单独的步骤 - TaskletStep
- with a Tasklet 只执行 compression/decompression。
我有一个 Spring 启动应用程序,我写了一些 ItemWriter 和 ItemReader,例如 JSON 文件和 CSV 文件。
我想添加一个压缩到 GZIP 和从 GZIP 解压的步骤。
我想知道是否可以像往常一样使用 JavaStreams -
如果我有一些 InputStream 或 OutputStream,我可以用另一个流装饰它(即,另一个流可以在它的构造函数中获取它并使用它),这样可以轻松获得所有流的功能。
可以用 Spring ItemWriter 和 ItemReader 来完成吗?
否则,向现有写入器和读取器添加压缩和解压缩的最佳方法是什么?
鉴于目前还没有其他答案...让我提出一个解决方案...
使用 Decorator Pattern 在 ItemWriter
和 ItemReader
中分别压缩或解压缩 output/input 并不难。但是,使用装饰 ItemWriter
和 ItemReader
的作业的 可重启性 可能会受到影响。
...what's the best way to add compressing and decompressing to an existing writers and readers?
我建议一个单独的步骤 - TaskletStep
- with a Tasklet 只执行 compression/decompression。