out.print()和response.getWriter().write()区别

时间:2021-03-09 03:01:14

1.print()和write()区别:

write():表示的是仅支持输入字符类型数据,字符,字符数组和字符串等,

print():表示的是将各种数据类型(包括object)的数据通过默认编码换成bytes字节形式,这些字节都通过write(int c)方式被输出。

2.(1)out和response.getWriter()类不一样,一个是jspWriter,一个是java.io.printWriter。jspwriter是一个带缓冲区功能的printWriter,它不是直接将数据输出,而是将数    据输出到缓冲区在输出。printWriter是直接将数据输出。

 (2)out是jsp的内置对象,刷新jsp页面,自动初始化获得out对象,所以需要刷新页面。然而response.getWriter()输出信息需要out对象输出到网页上,当响应结束时自动关闭,  不需要刷新也面,举个简单的例子,response.getWriter()这个对象同时获得网页的画笔,然后拿着画笔在网页上画任何你需要的东西。

(3)out的print()和println()方法在缓冲区中满了溢出,并没有自动刷新时候会产生IOException,而response.getWriter()方法不会输出IOException异常。