来源:(http://blog.sina.com.cn/s/blog_64f553410100gw0w.html) - 谈谈 JSP 中 include 标识下 flush 属性_小钱_新浪博客
今天学习中遇到的问题,说在 JSP 中 include 另一个文件时有个很偏的属性,叫 flush,默认为 false。做了个小实验,说明下 flush 的作用。
在同一个 JSP 中,如果不断 include 自己(源文件),在逻辑上会形成死循环。若默认情况下,服务器会等待该文件被读到底端,然后才输出到客户端,并且销毁该次访问的 request 和 response。而当把 flush 属性赋为真值时,在缓存累积了一定数据时,服务器会先提供一部分数据给浏览器,并等待后续内容。
由此可以得出结论,在简单页面中,该属性不纳入考虑,而在页面包含大量数据时,为缩短客户端延迟,可将一部分内容先行输出。该属性在 Servlet 中也有对应的应用。
在以上提及的实验中,默认 flush=false 的情况下用户将看到白屏,直到服务器崩溃;而 flush=true 的情况下用户能看到源源不断输出的内容。