out对象主要用来向客户端输出各种数据类型的内容,并且管理应用服务器上的输出缓冲区,
缓冲区默认值一般是8KB,可以通过页面指令page来改变默认值。
在使用out对象输出数据时,可以对数据缓冲区进行操作,及时清除缓冲区中的残余数据,为其他的输出让出缓冲空间。
待数据输出完毕后,要及时关闭输出流。
out对象被封装为javax.servlet.jsp.JspWriter类的对象,在实际上应用上out对象会通过JSP容器变换为java.io.PrintWriter类的对象。
1 管理响应缓冲
在JSP页面中,可以通过out对象调用clear()方法清除缓冲区的内容。这类似于重置响应流,以便重新开始操作。
如果响应已经提交,则会有产生IOException异常的副作用。
相反,另一个种方法clearBuffer()清除缓冲区的“当前”内容,而且即使内容已经提交给客户端,也能够访问该方法。
out对象用于管理响应缓冲区的方法如下表所示:
clear() 清空缓冲区;
clearBuffer() 清空当前区的内容;
close() 先刷新流,然后关闭流;
flush() 刷新流;
getBufferSize() 以字节为单位返回缓冲区的大小;
getRemaining() 返回缓冲区中没有使用的字符的数量;
isAutoFlush()返回布尔值,自动刷新还是在缓冲区溢出时抛出IOException异常;
2 向客户端输出数据
out对象的另外一个很重要的功能就是向客户写入内容。
由于JspWriter是由java.io.Writer派生而来,因此它的使用与java.io.Writer很相似。
例如在JSP页面中输出一句话,代码如下:
<%=out.println("同一世界,同一梦想")%>
这句代码用于在页面中输出“同一世界,同一梦想”。