EL隐式对象

EL隐式对象

在学习JSP技术时,提到过隐式 对象的应用。在EL技术中,同样 提供了隐式对象,EL中的隐式对象 共有 11个,
在这里插入图片描述
pageContext可以获取 其它10个隐式对象,
pageScope、
requestScope
sessionScope
applicationScope适用于获取指定域的隐式对象

param和param Values是用于 获取 请求参数的隐式对象

header和headerValues是用于获取HTTP请求消息头的隐式对象

cookie是用于获取Cookie信息的隐式对象

initParam是用于获取 Web应用初始化信息的隐式对象

pageContext

为了获取JSP页面的隐式对象,可以使用EL表达式中的pageContext隐式对象,pageContext隐式对象的实例代码如下:

${pageContext.response.characterEncoding}

请求消息为:

${pageContext.request.requestURI}

服务器信息为:

${pageContext.servletContext.servletInfo}

使用EL表达式中的pageContext对象成功 地获取到了 request、response、servletContext和ServletConfig对象中的属性。需要注意的是,不要将EL表达式中的隐式对象与JSP中的隐式对象混淆,只有pageContext对象是它们所共有的,其它隐式对象则毫不相关。

Web域相关对象

在 Web 开发中,PageContext、HttpServletRequest、HttpSession和ServletContext这4个对象之所以可以存储数据,是因为它们内部都定义了一个Map集合,这些Map集合是有一定作用范围的。例如,HttpRequest对象存储的数据只在当前请求中可以获取带。习惯性地,我们把这些,Map集合称为域,这些Map集合所在的对象称为域对象。在EL表达式中,为了获取指定域中的数据,提供了 pageScope、requestScope、SessionScope和applicationScope4个隐式对象“
需要注意的是,EL表达式只能在这4个作用域中获取数据。

param和paramValues对象

在JSP页面中,经常需要 获取客户端传递的请求参数,为此,EL表达式t## 提供了param和paramValues两个隐式对象,这两个隐式对象专门用于获取客户端访问JSP页面时传递的请求参数(类似于 httprequest中的 getparam对象)

1、param对象
param对象用于获取请求参数的 某个值,它是 Map类型,与 request.getParameter()方法相同,在使用EL获取参数时,如果参数不存在,返回的是空字符串,而不是Null。param对象的语法格式比较简单,具体示例如下:

${param.num}

2、paramValues对象
如果一个请求参数有多个值,可以使用paramValues对象来获取请求参数的所有值,该对象 用于返回请求参数所有值 组成的数组,如果要 获取某个请求 参数的第一个值,可以使用 如下代码:

${paramValues.num[0]}

cookie对象

在JSP开发中,经常要获取 客户端的Cookie信息,为此,在EL表达式中,提供了Cookie隐式对象,该对象是一个代表所有 Cookie 信息的Map集合,Map集合中元素的键为各个Cookie对象的名称,值则为对应的Cookie对象。

在这里插入图片描述
在这里插入图片描述

initParam对象

在开发一个Web应用程序时,通常会在 **web.xml 文件中配置 一些初始化参数,**为了方便 获取这些参数,EL表达式提供了 一个 initParam隐式对象,该对象 可以获取 Web应用 程序中 全局初始化 参数,
(注意与 param参数的区别)

EL表达式 简化了JSP页面的书写,使不懂Java编程的开发人员也可以编写功能强大的JSP页面、

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值