2

我有一个 Spring Boot 应用程序,我写了一些 ItemWriter 和 ItemReaders,例如 JSON 文件和 CSV 文件。

我想添加一个压缩到 GZIP 并从 GZIP 解压缩的步骤。

我想知道是否可以像往常一样使用 JavaStreams -

如果我有一些 InputStream 或 OutputStream,我可以用另一个流来装饰它(即,另一个流可以在它的构造函数中获取它并使用它),这样就可以轻松地获得所有流的功能。

可以用 Spring ItemWriter 和 ItemReader 完成吗?

否则,为现有的作者和读者添加压缩和解压缩的最佳方法是什么?

4

1 回答 1

1

鉴于还没有其他答案……让我提出一个解决方案……

使用装饰器模式分别在 aItemWriter和中压缩或解压缩输出/输入并不难ItemReader。然而,使用那些修饰和的作业的可重新启动性可能会受到影响。ItemWriterItemReader

...向现有的作者和读者添加压缩和解压缩的最佳方法是什么?

我建议一个单独的步骤 - a TaskletStep- 使用Tasklet来完成压缩/解压缩。

于 2020-01-16T22:07:37.497 回答