在JavaWeb中通过ajax或jquery向JSP页面传送数据时会用到PrintWriter out = response.getWriter() ;out.print(data);
网上的程序中有人在后面加了out.flush();
有的人还加了out.close();
我发现不加out.flush();
out.close();
程序也是可以跑通的。我想问JSP网站如果长期运行,不加out.flush();
会造成什么后果?不加out.close();
又会造成什么后果?out.flush(); out.close();
是不是可有可无的?
麻烦各位有经验的大神帮我解答下。
如果flush close在servlet方法(get post put....)的最后,那这是不必要的,因为servlet引擎会在用户态servlet方法返回后检查response流,并作flush和close
如果flush close在servlet方法的中部,并且后面会有不定时或者耗时的操作,需要立即发送相应,那么就要flush就立即写入socket了。而close是不必要,除非你明确的知道需要立即关闭socket,就是因为servlet引擎会做这个事。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。