首页 > 其他 > 详细

Servlet向客户端输出数据的方法

时间:2015-10-10 16:48:13      阅读:203      评论:0      收藏:0      [点我收藏+]

     HttpServletResponse有两个向客户端回送数据的方法,一个是getWriter(),一个是GetOutputStream(),这两个方法都是用来向客户端发送响应数据的方法。

getWriter()方法可以向客户端发送字符数据响应,getOutputStream()方法不仅可以发送字符(必须将字符转化为字节才可以使用该方法),而且可以发送字节数据也就是二进制数据,因此,在传送文件时,只能使用getOutputStream()方法。

    但是在使用getOutputStream()方法传送字符时,需要将字符转化为二进制字节才可以通过getOutputStream()方法传送,例如:

    OutputStream os = response.getOutputStream();
    os.write("Hello World".getBytes());

    使用getWriter()方法则可以直接输出字符数据,例如:

    PrintWriter out = response.getWriter();

    out.println("Hello World");

    但是一定要记住一点,这两个流是不可以同时使用的,如果同时使用则会报错,当服务器发现os.write("Hello World".getBytes())这个方法时,他会将字符串封装成response对象返回给web服务,web服务器再将response对象拆分并封装成http响应返回给浏览器,当这一系列动作完成之后,web服务器就会去检查response的流是否被关闭,如果没有关闭,服务器会自动帮你关闭流,这时,out.println("Hello World")就不会被返回,因为流已经被关闭,所以服务器就会报错。

Servlet向客户端输出数据的方法

原文:http://www.cnblogs.com/Draeen/p/4867176.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!