求助大神 springMVC中,如何定时回复一个请求呢?

zhzczyc 2017-07-19 01:03:18
比如做了个@RequestMapping,
一个HttpServletRequest进来了。
我要在30秒后用HttpServletResponse回复客户端;
使用timer

//启动定时器 20s
Timer timer = new Timer();
reqTimerTask tk = new reqTimerTask(timer,resp);
timer.schedule(tk, 20*1000);


static class reqTimerTask extends TimerTask{
private HttpServletResponse resp;
private Timer timer;
public reqTimerTask(Timer timer,HttpServletResponse resp){
this.timer = timer;
this.resp = resp;
}
@Override
public void run() {
try {
resp.getWriter().write("balabalabalabala");
this.cancel();
timer.cancel();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}


这样最终客户端不能收到response
...全文
170 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
z896709283 2017-07-20
  • 打赏
  • 举报
回复
用长连接,设置一个连接过时的时间,比你要等待的时间长

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧