JSP从零开始学(视频教学版)
上QQ阅读APP看书,第一时间看更新

4.5 out对象

out对象是继承javax.servlet.jsp.JspWriter类的一个输出流对象。它包含有很多IO流中的方法和特性。最常用的方法就是输出内容到HTML中。

4.5.1 out对象的常用方法

out对象的常用方法参见表4.6。

表4.6 out对象的常用方法

4.5.2 out对象的使用示例

out对象中的方法相对比较简单而且也比较少用,下面就通过几个简单的例子来演示。

【例4.11】演示out对象的println方法

outprintln.jsp是直接在Java脚本中描述HTML标记,其源代码如下:

      ----------------- outprintln.jsp----------------
      01   <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
      02   <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
      03   <html>
      04    <head>
      05      <title>演示out对象</title>
      06    </head>
      07
      08    <body>
      09       <center>
      10          <hr>
      11          <h4>以下就是一个表格</h4>
      12          <%
      13           out.println("<table border='2'>");
      14           out.println("<tr>");
      15          out.println("<td width='60'>"+"姓名"+"</td>");
      16          out.println("<td width='40'>"+"性别"+"</td>");
      17          out.println("<td width='80'>"+"出生年月"+"</td>");
      18          out.println("<td width='60'>"+"城市"+"</td>");
      19           out.println("</tr>");
      20           out.println("<tr>");
      21           out.println("<td width='60'>"+"Smith"+"</td>");
      22           out.println("<td width='60'>"+"Male"+"</td>");
      23           out.println("<td width='60'>"+"1984.8"+"</td>");
      24           out.println("<td width='60'>"+"NerYork"+"</td>");
      25           out.println("</tr>");
      26           out.println("</table>");
      27           %>
      28       </center>
      29    </body>
      30   </html>

上述代码中,第13~26行用out对象输出HTML格式。页面效果如图4.20所示。

图4.20 outprintln.jsp页面的运行结果

提示

现在开发中很少用这种方法输出HTML标记,因为比较繁琐而且容易出错。

【例4.12】演示out对象的clear方法

outclear.jsp页面是清空缓冲区中的内容,其源代码如下:

      ----------------- outclear.jsp----------------
      01   <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
      02   <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
      03   <html>
      04    <head>
      05      <title>演示out对象clear方法</title>
      06    </head>
      07
      08    <body>
      09      <h4>这是HTML中的内容</h4>
      10       <%
      11         out.print("<h4>这是out对象输出的信息</h4>");
      12          out.clear();
      13        %>
      14       <center><h4>这是HTML中的信息</h4></center>
      15    </body>
      16   </html>

上述代码中,第12行清除缓冲区中的内容。页面效果如图4.21所示。

图4.21 outclear.jsp页面运行结果

从运行结果看出,若在JSP页面中调用clear方法,那么以前向客户输出流中写入的数据都将被clear。

提示

在调用clear之前,不要调用flush方法,否则会抛出IO异常。