Java代码 收藏代码
@RequestMapping("xxx.do")
public void test(HttpServletResponse response, String pcid) {
this.sendDirectToClient(response, CONTENTTYPE_JSON, CHARSET_UTF8, json.toString());
//结果集先返回、短信后置发送
sMSService.sendSmsTask(data);
}
怎样让this.sendDirectToClient这句执行完,前台ajax 就收到后台返回的结果,sendDirectToClient方法如下 Java代码 收藏代码
PrintWriter writer = response.getWriter();
writer.write(s);
writer.flush();
但调试时,总是等到test方法执行完,前台才返回结果, 想要的是 sendDirectToClient 执行完结果就返回, 后台接着执行 sMSService.sendSmsTask
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
如果访问量不是特别的大,可以另外起一个线程来sMSService.sendSmsTask;
@RequestMapping("xxx.do")
public void test(HttpServletResponse response, String pcid) {
this.sendDirectToClient(response, CONTENTTYPE_JSON, CHARSET_UTF8, json.toString());
Thread t = new Thread(new Runnable() {
@Override
public void run() {
sMSService.sendSmsTask(data);
}
});
t.start();
}