Spring integration 使用HTTP入站适配器将文件发布到Spring集成

Spring integration 使用HTTP入站适配器将文件发布到Spring集成,spring-integration,Spring Integration,我正在寻找一种好技术的建议,将文件发布到spring集成队列中,然后逐行分割以进行进一步处理。诀窍是这个文件可能相当大,我不想把它读入内存 我正在考虑将HTTP入站适配器与POST一起使用,但我不确定如何在不首先读取整个内容的情况下将有效负载获取到集成流中 目前我正在使用一个MVC控制器,将它保存到一个临时文件中,并在将每一行传递到网关之前逐行读取它。如果可能的话,您希望完全在spring集成中完成此操作。您不能为此使用标准适配器 可能最简单的实现方法是使用一个自定义控制器,将行作为消息流传输到

我正在寻找一种好技术的建议,将文件发布到spring集成队列中,然后逐行分割以进行进一步处理。诀窍是这个文件可能相当大,我不想把它读入内存

我正在考虑将HTTP入站适配器与POST一起使用,但我不确定如何在不首先读取整个内容的情况下将有效负载获取到集成流中


目前我正在使用一个MVC控制器,将它保存到一个临时文件中,并在将每一行传递到网关之前逐行读取它。如果可能的话,您希望完全在spring集成中完成此操作。

您不能为此使用标准适配器


可能最简单的实现方法是使用一个自定义控制器,将行作为消息流传输到SI流中。

您不能为此使用标准适配器

可能最简单的实现方法是使用一个自定义控制器,将行作为消息流传输到SI流。

使用
支持
消息转换器来注入。其中一个可以是
multipartwareformhttpmessageconverter
,您可以使用
MultipartFileReader
实现注入它。可以返回
MultipartFile#getInputStream()

最后一个可以从Spring Integration
4.1
提供的
FileSpliter
中使用,以逐行读取流。

支持
消息转换器
进行注入。其中一个可以是
multipartwareformhttpmessageconverter
,您可以使用
MultipartFileReader
实现注入它。可以返回
MultipartFile#getInputStream()


最后一个可以从Spring Integration提供的
FileSpliter
中使用,逐行读取流。

这正是我正在做的,验证我是否采取了合理的方法总是很好的。
>将其保存到临时文件
-也许您可以直接从输入流中读取并将每一行发送到gw(避免将IO发送到文件系统)。这正是我正在做的,验证我是否采取了合理的方法总是很好的。
>将其保存到临时文件中
-也许您可以直接从输入流中读取并将每一行发送到gw(避免将IO发送到文件系统)。