JavaSpringMVC如何在下载开始前在视图中显示消息
我有一个允许用户下载文件的控制器。 问题在于,根据发送给控制器的参数,控制器将压缩不同的文件夹并将其发送给客户端,压缩有时可能需要2分钟,而用户会收到一个空的浏览器选项卡和一个加载标题的提示
有没有一种方法可以在文件压缩并真正开始下载之前向用户显示消息?类似于“请稍候,您的文件正在准备下载!”
谢谢大家!
你可以在下面搜索框中键入要查询的问题!
我有一个允许用户下载文件的控制器。 问题在于,根据发送给控制器的参数,控制器将压缩不同的文件夹并将其发送给客户端,压缩有时可能需要2分钟,而用户会收到一个空的浏览器选项卡和一个加载标题的提示
有没有一种方法可以在文件压缩并真正开始下载之前向用户显示消息?类似于“请稍候,您的文件正在准备下载!”
谢谢大家!
# 1 楼答案
这并不特定于spring mvc——您可以通过任何基于web的操作(如servlet或webwork/structs操作)来实现这一点
用户发送的执行下载的请求不应创建。zip,但将创建zip的任务排队,然后创建另一个线程(线程?)可以完成并创建这些。压缩文件
例如
由于我对spring mvc不太熟悉,上面的内容可能有点不对劲(就库名称/约定而言),但基本思想是这样的——将zip文件创建作为一项任务排队(使用类似ExecutorService的东西),然后快速渲染视图。然后,视图本身要么刷新(使用meta refresh标记),要么AJAX轮询另一个控制器以查看任务是否完成。如果是,则重定向到下载url