我希望我的servlet在移动到下一行之前等待数据库更新的结果。 我有以下代码片段:
//wait for this to finish and get the status
status=profiledao.updateProfile(profile);
//then execute this statement
httpresponse.getWriter().print(fileName);
最好的方法是什么?
谢谢。
答案 0 :(得分:1)
除非您与其他未显示的代码异步运行此行,否则您发布的代码将完全符合您在正常Java环境中要执行的操作。
如果您异步运行此程序,并且希望继续执行此操作,同时又要完成您正在谈论的任务,那么您想要的是Promise(承诺)
CompletableFuture.supplyAsync(this::sendMsg)
.thenAccept(this::notify);
此代码是在异步设置中执行此操作的非常非常简单的方法,但是,如果显示的代码是“同步”,则不需要这样做。