问答详情
源自:3-10 response对象

请问,为何有out.flush();语句,页面就不能重定向页面呢?

<%@ page language="java" import="java.util.*,java.io.*" contentType="text/html; charset=utf-8"%>
<%
	response.setContentType("text/html;charset=utf-8");
	out.print("<h1>response内置对象</h1>");
	out.print("<hr>");
	out.flush();
	PrintWriter outer=response.getWriter();
	outer.println("大家好,我是response对象生成的输出流outer对象");
	response.sendRedirect("reg.jsp");//请求重定向
%>


提问者:小羊爱主 2015-06-11 21:40

个回答

  • 好帮手慕珊
    2015-06-12 09:31:01
    已采纳

    使用out.flush()语句会抛出异常,导致后面的代码不能执行,也就不能重定向页面了。你可以自己运行一下代码,不给flush加注释,看看会有什么问题:)

  • 萌萌哒猫头鹰
    2016-01-13 12:29:01

    看了楼上的还是没有明白。out和response的printwriter应该是两个不同的输出对象。out.flush应该是清空out对象的输出,为什么response对象的输出也会被清空?