`
everlxq
  • 浏览: 108798 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

JspWriter与PrintWriter(转)

 
阅读更多

1都继承自java.io.writer类

JspWriter在Jsp页面上直接用out对象输出,也可以直接用pageContex.getOut()得到out对象

PrintWriter必须通过response.getwriter()得到

2.在Jsp页面上用两种方法同时输出数据,PrintWriter中的数据会先输出

例如:

新建test.jsp页面

<%
out.println("out");
JspWriter out1 = pageContext.getOut();
if(out == out1 )
{
out.println("out==out1");
}
else
{
out.println("out!=out1");
}

PrintWriter pw = response.getWriter();
pw.write("pw writer");
%>

运行结果为

pw writer out out==out1 This is my JSP page.

原因:

out对象相当于插入到了PrintWriter前面的缓冲区中.out对象满足一定条件时

,才会调用PrintWriter对象的print()方法,把out缓冲区中的内容输出到浏览器端

如果想让上面的代码的按代码的先后顺序输出可以写成:

out.flush();

刷新缓存区即可

则输出结果变为

out out==out1 pw writer This is my JSP page





另外:PrintWriter的print方法中不会抛出IOException,而JspWriter会。
JspWriter是抽象类而PrintWriter不是,也就是说你可以通过new操作来直接新建一个PrintWriter的对象而JspWriter不行,它必须是通过其子类来新建。
但是它们之间又是有关系的,这个关系主要是JspWriter对PrintWriter有依赖。初始化一个JspWriter对象的时候要关联ServletResponse对象的一个PrintWriter类型对象,最终JspWriter对象的输出任务还是通过这个PrintWriter类型对象做的
分享到:
评论

相关推荐

    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压缩是通过`...

    jsp语法基础

    - **buffer**:用于指定`out`对象(类型为JspWriter)使用的缓冲区大小,如果设置为`none`,则所有输出直接通过`ServletResponse`的`PrintWriter`对象写出。设置该属性的值只能以kb为单位,默认值是8kb。 - **...

    javaEE考试总结

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

    Javaweb面试题

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

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

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

    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...

    JSP应用技巧及心得---数据库的链接

    3. **out**:基于`PrintWriter`的`JspWriter`,用于将内容输出到客户端。可以通过`buffer`和`autoFlush`属性来控制缓冲区的行为。 4. **session**:`HttpSession`对象,用于存储用户会话中的数据。即使没有显式创建...

    jsp-api(JavaServer Pages API Documentation )

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

    JSP内置对象使用说明.doc

    4.Out对象类:JspWriter Out对象是用于向客户端输出数据的,相当于Java中的PrintWriter。例如,向页面输出一段文字: ```java out.println("Hello, World!"); ``` 5.Session对象类:HttpSession 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()`则会在输出后添加换行符。 综上...

    JSP9个内置对象方法一览[归类].pdf

    - `getWriter()`:返回一个`PrintWriter`,用于向客户端输出字符。 - `setContentLength(int len)`:设置响应内容的长度。 - `setContentType(String type)`:设置响应的MIME类型。 - `sendRedirect(String ...

    03-JavaWeb之JSP1

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

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

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

    web开发中JSP内置对象介绍

    - `getWriter()`:返回用于输出字符的PrintWriter。 - `setContentLength(int len)`:设置响应的长度。 - `setContentType(String type)`:设置响应的MIME类型。 - `sendRedirect(String location)`:重定向...

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

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

Global site tag (gtag.js) - Google Analytics