博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JSP_九大隐式对象
阅读量:6403 次
发布时间:2019-06-23

本文共 1727 字,大约阅读时间需要 5 分钟。

JSP九大隐式对象:在翻译过来的Servlet中Service方法自动帮我们前置定义的九个对象,可以在jsp页面中直接使用

page
confing
application
response
request
session
out
exception
pageContext
out
相当于是response.getWriter得到PrintWriter
out和response.getWriter获取到的流不同在于,在于这个out对象本身就具有一个缓冲区.利用out写出的内容,会先缓冲在out缓冲区中,直到out缓冲区满了或者整个页面结束时out缓冲区中的内容才会被写出到response缓冲区中,最终可以带到浏览器页面进行展示
page指令中的
[buffer="none | 8kb | sizekb" ]可以用来禁用out缓冲区或设置out缓冲区的大小,默认8kb
[ autoFlush="true | false"]用来设置当out缓冲区满了以后如果在写入数据时out如何处理,如果是true,则先将满了的数据写到response中后再接受新数据,如果是false,则满了再写入数据直接抛异常

在jsp页面中需要进行数据输出时,不要自己获取response.getWriter,而是要使用out进行输出,防止即用out又用response.getWriter而导致输出顺序错乱的问题

pageContext
(1)可以作为入口对象获取其他八大隐式对象的引用
getException方法返回exception隐式对象
getPage方法返回page隐式对象
getRequest方法返回request隐式对象
getResponse方法返回response隐式对象
getServletConfig方法返回config隐式对象
getServletContext方法返回application隐式对象
getSession方法返回session隐式对象
getOut方法返回out隐式对象
(2)域对象,四大作用域的入口,可以操作四大作用域中的域属性
作用范围: 当前jsp页面
生命周期: 当对jsp页面的访问开始时,创建代表当前jsp的PageContext,当对当前jsp页面访问结束时销毁代表当前jsp的pageContext
作用:在当前jsp中共享数据
public void setAttribute(java.lang.String name,java.lang.Object value)
public java.lang.Object getAttribute(java.lang.String name)
public void removeAttribute(java.lang.String name)

public void setAttribute(java.lang.String name, java.lang.Object value,int scope)

public java.lang.Object getAttribute(java.lang.String name,int scope)
public void removeAttribute(java.lang.String name,int scope)
PageContext.APPLICATION_SCOPE
PageContext.SESSION_SCOPE
PageContext.REQUEST_SCOPE
PageContext.PAGE_SCOPE

findAttribute方法 -- 搜寻四大作用域中的属性,如果找到则返回该值,如果四大作用域中都找不到则返回一个null,搜寻的顺序是从最小的域开始向最大的域开始寻找

(3)提供了请求转发和请求包含的快捷方法
  pageContext.include("/index.jsp");
  pageContext.forward("/index.jsp");

转载于:https://www.cnblogs.com/dreamHighMjc/p/7072869.html

你可能感兴趣的文章
微信小程序与h5的区别
查看>>
Python学习笔记(7)——循环
查看>>
iOS 自定义卡片式控件:QiCardView
查看>>
Kotlin简单使用手册
查看>>
一个老程序猿的焦虑2
查看>>
属于Nexus的时代已经结束,但属于Pixel的时代才刚刚到来
查看>>
关于RxJava最友好的文章(进阶)
查看>>
看 Laravel 源代码了解 ServiceProvider 的加载
查看>>
JB的ARTS之旅-关于日志的那些事
查看>>
如何利用Spring Cloud构建起自我修复型分布式系统
查看>>
LeetCode之JavaScript解答-118题:帕斯卡三角形
查看>>
Android 自定义 View 之 实现一个多功能的 IndicatorView
查看>>
Android视频开发进阶(part5-安卓的DRM,视频版权保护)
查看>>
[译] 我是如何使用 Python 在 Medium 上找到并关注有趣的人
查看>>
TCP/IP的简介
查看>>
Echarts 系列之复制粘贴大法
查看>>
区块链应用:Bitshares 入门(一) 搭建Bitshares本地全量节点(重钱包)
查看>>
推荐适合Java程序员开发的工具
查看>>
Android资源动态加载以及相关原理分析
查看>>
计算机视觉—CNN识别手写数字(11)
查看>>