jsp中的九大隐式对象

 当jsp一页面在第一次被访问时,web容器都会把请求交给jsp引擎去处理,jsp引擎将惊悚片翻译成一个_jspServlet,然后按照servlet的调用方式进行调用。由于第一次访问时会翻译成servlet,所有会比较慢,但第二次访问时,jsp引擎发现jsp没有变化,则不会再次翻译,而是直接调用。jsp引擎在调用jsp对应的_jspServlet时,会传递或创建九个与web开发相关的对象供_jspServlet使用,在jsp页面开发中可以直接调用这些对象。
相对于servlet,jsp独有的两大隐式对象
1、out
类型为JspWriter,相当于一种带缓存功能的PrintWriter,设置Jsp页面的page指令的buffer属性可以调整大小,只有向out对象中写入了内容且满足如下任何一个条件时才会调用ServletRespinsegetWriter方法,并通过该方法返回的PrintWriter对象将out对象缓冲区中的内容真正写入到Servlet引擎提供的缓冲区中:1、设置page指令的buffer属性关闭了out对象的缓冲功能 2、out对象的缓冲区已满3、整个Jsp页面结束
在jsp中嵌入下面的java代码
<%
  out.write("aaa");
  response.getWriter().write("bbb");
%>
则在浏览器中的显示为bbb  aaa ,原因是out.write("aaa");执行后像JspWriter缓存中写入aaa,response.getWriter().write("bbb");执行后像response的缓冲区中写入bbb,当jsp页面结束时调用ServletRespinsegetWriter方法将aaa写入response中,因此在输出时会先输出bbb再输出aaa。
pageContext对象
封装了对其他8大对象的引用,它自身还是一个域对象可以用来保存数据,并且这个对象还封装了web开发中经常涉及的一些常用操作,例如引入和跳转其他资源,检索其它域对象中的属性等。封装的8大对象的引用用在自定义标签中。
pageContext类中定义了一个forward方法和两个include方法来分别简化和替代RequestDispatcher、forward方法和include方法


 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值