我有一个Java Play Framework 2.5项目,我必须定期更新客户的注册表。我无法进行简单的SQL插入/更新,因为我要对每一行进行一些逻辑和操作。
我最终在我的网站上用JS上传了xlsx
文件(异步方式),然后用Apache POI处理它。
我唯一的问题是我不知道如何通知上传文件的用户处理文件的进度。
我想简单地用百分比显示每10%的消息。
我在网上搜索过,我认为最好的方法是使用带有Akka(BroadcastHub
)的websockets,但我只是在Scala中找到示例或者用于双向通信仅在收到输入时发送输出。
如果你知道一种不同的方式,欢迎你!
答案 0 :(得分:0)
我建议你看一下https://github.com/playframework/play-java-websocket-example:它给出了一个websocket和一个演员互动的例子。
在您的情况下,您将创建一个管理突变的命名actor(useractor-someid)。然后控制器将引用同一个actor(或让其他actor发送到useractor-someid),以便它可以获取状态。我建议你使用JsonNode流,这样你就可以在websocket连接中发送/接收JSON。