辨析JspWriter和PrintWriter
JspWriter和PrintWriter的区别?
JspWriter相当于带缓冲的PrintWriter
如何控制out缓冲?
通过设置JSP页面page指令的buffer属性, 可以调整out缓冲大小, 或关闭缓冲.
out缓冲何时输出?
当满足下面其中一个条件时:
1) 关闭out的缓存功能时
2) out缓冲已满
3) JSP页面结束
同时使用out对象和PrintWriter输出数据的现象?
<%
out.write(“aaa”); // JspWriter
response.getWrite(“bbb”) // PrintWriter
%>
输出顺序:
bbb
aaa
原因? out对象工作原理图解:
如何在JSP页面获取字节流?
当JSP获取字节流后, 服务器一般会抛异常, 这是因为Servlet无法同时获得字节流和字符流, 如果我们真需要字节流, 那么就要控制JSP使用out对象输出, 那么如何控制out对象不输出呢?只要JSP页面没有模板内容(包括换行和空格), out对象就不会调用ServletResponse.getWriter()方法, 也就不会获得PrintWriter对象, 这样JSP翻译后的Servlet就不会同时存在字节流和字符流.
辨析JspWriter和PrintWriter的更多相关文章
- JspWriter与PrintWriter的关系
一.JspWriter与PrintWriter的关系: 1.都是继承自java.io.Writer类. JspWriter可以在JSP页面中直接用out对象输出.可以用pageContext.getO ...
- jsp 以及javabean内省技术
l JSP l JavaBean及内省 l EL表达式 1.1 上次课内容回顾 会话技术: Cookie:客户端技术.将数据保存在客户端浏览器上.Cookie是有大小和个数的限制. Session:服 ...
- JSP(一)
一.JSP概要 一]JSP的概念 1>JSP是SUN公司开发的一个基于服务端的一种动态WEB开发技术. 2>JSP的代码结构/内容 = HTML内容+JSP特有元素内容 ...
- JSP 内置对象(上)
JSP 内置对象是 Web 容器创建的一组对象,不使用 new 关键字就可以直接使用的对象.如上一章中使用脚本实现打印九九乘法表中的out对象 <%-- 脚本:out对象是JSPWriter类的 ...
- response.getWriter().write()和 response.getWriter().print()的区别 以及 PrintWriter对象 和 out对象 的区别
感谢原文作者:krismile__qh 原文链接:https://blog.csdn.net/krismile__qh/article/details/89926001 一.response.getW ...
- JavaScript 函数节流和函数去抖应用场景辨析
概述 也是好久没更新 源码解读,看着房价蹭蹭暴涨,心里也是五味杂陈,对未来充满恐惧和迷茫 ...(敢问一句你们上岸了吗) 言归正传,今天要介绍的是 underscore 中两个重要的方法,函数节流和函 ...
- web也是区分前端与后端的,session\cookie辨析
<1>Ajax交互方式 Ext.Ajax.request( { //被用来向服务器发起请求默认的url url : "", //请求时发送后台的参数,既可以是Json对 ...
- 对属性NaN的理解纠正和对Number.isNaN() 、isNaN()方法的辨析
1.属性NaN的误解纠正 NaN (Not a Number)在w3c 中定义的是非数字的特殊值 ,它的对象是Number ,所以并不是任何非数字类型的值都会等于NaN,只有在算术运算或数据类型转换出 ...
- IO流(五)__文件的递归、Properties、打印流PrintStream与PrintWriter、序列流SequenceInputStream
一.文件的遍历 1.需求:对指定目录进行所有的内容的列出(包含子目录的内容)-文件的深度遍历 思想:递归的思想,在递归的时候要记住递归的层次. public class FileTest { publ ...
随机推荐
- mysql复制以及一主多从等常见集群概述
1 复制概述 Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的 数据复制到其它主机(slaves)上,并 ...
- 第36讲 谈谈MySQL支持的事务隔离级别,以及悲观锁和乐观锁的原理和应用场景
在日常开发中,尤其是业务开发,少不了利用 Java 对数据库进行基本的增删改查等数据操作,这也是 Java 工程师的必备技能之一.做好数据操作,不仅仅需要对 Java 语言相关框架的掌握,更需要对各种 ...
- mybatis浅显认识
mybatis主配置文件: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configu ...
- jquery控件的学习
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Milking Cows /// 区间计数 离散化排序 oj10105
题目大意: 输入n 接下来描述1~n位农夫挤牛奶的开始与结束时间 Sample Input 3300 1000700 12001500 2100 Sample Output 900 300 注意 ...
- 【idea】设置console控制台显示内容大小
Settings→Editor→General→Console 参考文章:https://blog.csdn.net/weixin_34363171/article/details/93444586
- Docker学习のWindows下安装Docker
一.docker最初只支持linux的,因此在windows下运行需要虚拟机. 利用VirtualBox建立linux虚拟机,在linux虚拟机中安装docker服务端和客户端 利用Windows的H ...
- Ip HostName查询
https://iplist.cc/api // 在线ip hostname查询
- HttpServlet中service方法的源码解读
前言 最近在看<Head First Servlet & JSP>这本书, 对servlet有了更加深入的理解.今天就来写一篇博客,谈一谈Servlet中一个重要的方法-- ...
- linux 服务器安装php5.6
查看原有的php版本:php -v 如果已经装了低版本的php,为了避免冲突,查看: yum list installed | grep php 删除:自行百度吧.可能不能一次性全部删除,只能一个一个 ...