`

JspWriter与PrintWriter的关系

阅读更多
JspWriter与PrintWriter的关系

一.JspWriter与PrintWriter的关系:
1.都是继承自java.io.Writer类.

JspWriter可以在JSP页面中直接用out对象输出.可以用pageContext.getOut();得到JspWriter对象.
PrintWrietr在JSP页面中必须用response.getWriter();方法得到其对象.二者作用域不同.
2.在JSP页面中同时调用两种方法向页面输出数据,PrintWriter中的数据会输出在JspWriter前面.
如:
        JspWriter out1 = pageContext.getOut(); //在JSP页面中可以直接使用out对象,而不用像这
样用pageContext.getOut();来得到JspWriter对象.这样做得到的out1和JSP页面中封装的out对象是同
一个对象.(可以用out == out1 来判断两个对象是否相等.)

out1.print("222");
PrintWriter pw = response.getWriter();
       
pw.print("111");
      *这样做的结果,在浏览器端还是先显示 "111",然后再显示"222".说明不管JspWriter与PrintWriter在程序中的顺序怎么样,始终先会输
出PringWriter中的数据然后再输出JspWriter中的数据.这是因为out对象相当于插入到了PrintWriter前面的缓冲区中.out对象满足一定条件时
,才会调用PrintWriter对象的print()方法,把out缓冲区中的内容输出到浏览器端.如果想让上面的代码的按代码的先后顺序输出可以写成:
spWriter out1 = pageContext.getOut();

out1.print("222");

out1.flush(); //刷新缓冲区
PrintWriter pw = response.getWriter();
       
pw.print("111");
       *out对象调用PrintWriter对象的print( )方法输出缓冲区中的内容的条件:

^设置page指令的buffer属性关闭了out对象的缓存功能
^写入到out对象中的内容充满了out对象的缓冲区
^整个JSP页面结束
分享到:
评论

相关推荐

    javaWeb测试题答案.docx

    6. **JspWriter与PrintWriter**:在JSP中,`out`内置对象实际上是`JspWriter`的一个实例,它提供了向响应输出流写入数据的能力。`PrintWriter`是`JspWriter`的一个子类,也可以用于输出,但在JSP中通常不直接使用。 ...

    jsp页面静态化

    在Web应用程序中,动态页面是主要内容,它们允许网站提供个性化的信息和服务,但这也意味着每次用户请求页面时,服务器都需要重新编译或执行JSP,可能还需要与数据库交互,这些操作都会消耗大量系统资源。...

    jsp静态化和伪静态化

    动态页面的每次请求都需要服务器进行编译、执行,甚至与数据库交互,这会消耗大量系统资源。为了提高效率和用户体验,人们提出了页面静态化和伪静态化技术。 **页面静态化**是指将动态生成的HTML页面保存为静态文件...

    Java--数据的压缩[借鉴].pdf

    对于JSP页面,由于它们最终通过`JspWriter`输出,而`JspWriter`是`PrintWriter`的包装,可以考虑在`javax.servlet.jsp.PageContext`中找到`PrintWriter`并进行适当的压缩处理。 总结起来,Java中的GZIP压缩是通过`...

    javaEE考试总结

    `PrintWriter`和`JspWriter`都是用于向响应流写入内容,但`JspWriter`通常在JSP页面中使用,与JSP元素交互更便捷。错误代码404表示资源未找到,500表示服务器内部错误。 在会话管理中,Cookie和Session是两种常用的...

    Javaweb面试题

    - A `JspWriter对象`:JSP页面的输出流对象。 - B `PrintWriter对象`:Servlet的输出流对象。 - C `Out对象`:不存在此对象。 - D `ResponseWriter对象`:不存在此对象。 - **正确答案:** B `PrintWriter对象...

    JSP语法与内置对象课件

    6. **Out对象**: `JspWriter`,用于向客户端输出内容,相当于Servlet的`PrintWriter`。 7. **Exception对象**: 当JSP页面抛出异常时,这个对象包含了异常信息。 8. **Config对象**: `ServletConfig`,提供Servlet...

    java华为面试题.doc

    * out:javax.jsp.JspWriter 对象,提供了几个方法使你能用于向浏览器回送输出结果。 * pageContext:javax.servlet.jsp.PageContext 对象,用于方便存取各种范围的名字空间、servlet 相关的对象的 API。 * session...

    Java Web程序设计-1期 项目库_单元案例_Request和Response-Session对象案例.doc

    在案例中,`out`实际上是`JspWriter`对象,它是`PrintWriter`的子类,用于在JSP页面中输出内容。`out.println()`用于输出各种类型的数据,包括布尔值、字符、字符数组、浮点数、整数、长整数、对象和字符串。`out....

    jsp基础学习课件(从基础开始),进一步了解JSP的相关基础应用。3

    Out对象是`JspWriter`接口的实例,用于向响应流输出数据。它是JSP页面中默认的输出流,通常用于打印HTML标签、文本内容等。例如,`out.print()`方法用于输出字符串,`out.println()`则会在输出后添加换行符。 综上...

    jsp-api(JavaServer Pages API Documentation )

    例如,`javax.servlet.jsp.JspWriter` 类对应于Servlet的`java.io.PrintWriter`,`javax.servlet.jsp.PageContext` 类则提供了对Servlet的`javax.servlet.ServletContext` 的访问。 8. **JSP的版本发展**: 随着...

    03-JavaWeb之JSP1

    九九乘法表</h1> () %> </body></html>比特科技3.1.1 out对象 out对象是javax.servlet.jsp.JspWriter的实例,用于向客户端发送数据,它继承了java.io.PrintWriter类。通过out对象,我们可以方便地将数据输出到浏览器...

    WEB开发 之 预定义变量的使用.docx

    这是一个`JspWriter`对象,通常是一个`PrintWriter`的子类,用于向客户端发送输出。`out`对象主要用于scriptlets(JSP脚本)中,因为JSP表达式会自动将内容写入输出流,所以一般不需要显式使用`out`。 4. `session...

    深入浅析Jsp中 out.print 和 out.write 的区别

    这主要是因为在JSP中,out对象实际上是对HttpServletResponse.getWriter()方法返回的PrintWriter对象的包装,而PrintWriter属于字符输出流的一种。 接下来,具体到这两种方法的不同点: 1. print方法在子类...

    Java Web程序设计入门课件-JSP隐式对象.pptx

    与ServletResponse.getWriter()返回的PrintWriter对象类似,out对象能够输出文本,但其内部带有缓存机制,提高了性能。 4.4.2 pageContext对象:作为JSP页面运行环境的代表,pageContext对象提供了一种途径来访问...

    web课程大作业.doc

    - `JspWriter out`对象是用于输出内容到响应的流,类似于Java的PrintWriter,可以用来显示动态生成的HTML或其他文本。 通过完成这个大作业,学生不仅能熟悉上述知识点,还能提升实际项目开发能力,学习如何在实际...

    servlet jsp总结

    - `getWriter()`:获取`PrintWriter`对象,用于向客户端输出文本内容。 - `setContentType(String type)`:设置响应的内容类型和编码方式。 #### 二、会话跟踪技术 - **四种主要的会话跟踪方式**: 1. **...

    jsp九大内置对象.doc

    4. **Out对象**:PrintWriter或JspWriter对象,用于将数据写入到HTTP响应的输出流中。可以用来输出文本、HTML、XML或其他任何内容。 5. **Application对象**:ServletContext对象,用于在整个应用范围内的数据共享...

    jsp内置对象的使用

    6. **out对象**:JspWriter对象用于向响应流写入内容,相当于Servlet中的`PrintWriter`。例如,`out.println("Hello, World!")`可以输出文本到客户端。 7. **config对象**:ServletConfig对象提供了关于当前Servlet...

Global site tag (gtag.js) - Google Analytics