使用Java通过HTTP批量下载图像的好方法


问题内容

我们有一个Web应用程序,需要通过http从合作伙伴站点导入10-20张图像。如果我有一个代表要下载的URL的字符串列表,是否有人建议如何尽快下载它们?

我可以将它们放在for循环中,但是如果有一种简单的方法可以并行化它,那么这对最终用户可能会有所帮助。尽管执行程序框架可能是个好主意,但我还是想避免使用直接的Java线程。

有任何想法吗?


问题答案:

Executor框架正是您想要的。特别是ExecutorCompletionService。使用此工具,您将能够以任何顺序快速提交请求。然后,您将完全按照它们的完成检索它们(而不是提交顺序)。