我正在开发一个项目,我们使用Tomcat 8作为应用程序服务器,因此使用JSP和Servlets。每个JSP都显示一种项目列表。应用程序的用户可以模拟项目。这意味着什么并不重要。当用户单击“模拟”按钮时,将执行以下过程:
所以我的问题是:通知JSP模拟完成的最佳方法是什么? JSP仍然显示项目处于模拟进度中。我目前的想法如下:
我可以定期向服务器发送一个Ajax请求来检查数据库中是否有'嘿我已准备好'标志,如果设置了,我可以在JSP上显示结果。但我觉得有更聪明的解决方案。
也许我可以使用最后一个servlet调用(参见第5点)以某种方式告知JSP模拟已完成?问题是这个servlet不是由客户端调用,而是由外部java程序调用。
你有什么建议吗?或者我应该阅读哪些技术?
谢谢。
答案 0 :(得分:0)
使用异步ajax调用意味着当servlet完成它的工作并返回一些HTTP代码(成功为200)时,该函数将返回。
所以这个例子:
$.ajax({
url: Config.serverUrl+'/simulationServlet',
type: 'GET',
success: function(result) {
$('#infoBox').text("simulation is over");
}
});
将显示模拟已完成。