一.认识out和PrintWriter
out对象是JspWriter类的实例,是向客户端输出内容常用的对象。
常用方法:
<span style="font-family:SimSun;font-size:18px;"> out.println(); //向客户端打印字符串;
out.clear(); //清除缓冲区的内容,如果flush之后调用会抛出异常
out.clearBuffer(); //清除缓冲区的内容,如果在flush之后调用的话不会抛出异常;
out.flush(); //将缓冲区内容输出到客户端
out.getBufferSize(); //缓冲区字节数的大小;
out.getRemaining(); //缓冲区剩余大小;</span>
PrintWriter getWriter() 返回可以向客户端输出字符的一个对象;
二.out VS PrintWriter
相同之处:
都是向客户输出对象;
不同之处:
response对象获得的PrintWriter对象 ,在打印的时候总是提前于内置out对象;
三.代码
如何让out对象输出能够在PrintWriter对象之前呢?
我们可以使用out对象的flush方法,将缓冲区的内容提前输出;
<span style="font-family:SimSun;font-size:18px;"><%@ page language="java" import="java.util.*,java.io.*"
contentType="text/html; charset=UTF-8"%>
<%
response.setContentType("text/html;charset=utf-8"); //设置响应的MIME类型
out.println("<h1>response内置对象</h1>");
out.println("<hr>");
out.flush(); //先将缓冲区的内容输出。
PrintWriter outer = response.getWriter(); //获得输出流对象
out.println("我比out先输出");
%></span>