response.getWriter()和jsp中的out对象的区别
Posted 缘来狠狂
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了response.getWriter()和jsp中的out对象的区别相关的知识,希望对你有一定的参考价值。
response.getWriter().append(String content)---向页面输出一段字符串
out对象的类型是JspWriter, 而response.getWriter()是一个PrintWriter, out对象也可以通过pageContext.getOut()获得, 这两个对象的类型不一样
out.print(null);会抛出异常, PrintWriter.print(null)不会抛出异常
JspWriter是一个抽象类, PrintWriter是一个继承了Writer的普通类
getWriter()方法可以在页面上输出一串字符, out也是一个输出对象, 两者的区别在于, getWriter()方法的执行结果, 总是优先于out对象, 可以使用out.flush()方法, 强行属性缓冲区的内容, 将out对象的输出结果先输出出来
造成这种现象的原因:
out对象实际上对PrintWriter是有依赖的, 他需要先将需要输出的内容存到response的缓冲区里面, 然后等待jsp页面中的out满足一定条件之后, 才会调用输出的方法把内容直接输出到页面上
而PrintWriter是可以直接输出出来的
以上是关于response.getWriter()和jsp中的out对象的区别的主要内容,如果未能解决你的问题,请参考以下文章
response.getWriter()和jsp中的out对象的区别
response.getWriter()和jsp中的out对象的区别
jsp内置对象out 和response.getwriter().write()的区别