`
CB-13
  • 浏览: 22306 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

EL隐式对象

    博客分类:
  • Web
阅读更多

 

下表列出了 11 EL 隐式对象的标识符。不要将这些对象与 JSP 隐式对象(一共只有九个)混淆,其中只有一个对象是它们所共有的。

 

类别

标识符

描述

JSP

pageContext

PageContext 实例对应于当前页面的处理

作用域

 

pageScope

与页面作用域属性的名称和值相关联的 Map

requestScope

与请求作用域属性的名称和值相关联的 Map

sessionScope

与会话作用域属性的名称和值相关联的 Map

applicationScope

与应用程序作用域属性的名称和值相关联的 Map

请求参数

 

param

按名称存储请求参数的主要值的 Map

paramValues

将请求参数的所有值作为 String 数组存储的 Map

请求头

 

header

按名称存储请求头主要值的 Map

headerValues

将请求头的所有值作为 String 数组存储的 Map

Cookie

cookie

按名称存储请求附带的 cookie Map

初始化参数

initParam

按名称存储 Web 应用程序上下文初始化参数的 Map

 

尽管 JSP EL 隐式对象中只有一个公共对象(pageContext),但通过 EL 也可以访问其它 JSP 隐式对象。原因是 pageContext 拥有访问所有其它八个 JSP 隐式对象的特性。实际上,这是将它包括在 EL 隐式对象中的主要理由。

其余所有 EL 隐式对象都是映射,可以用来查找对应于名称的对象。前四个映射表示先前讨论的各种属性作用域。可以用它们来查找特定作用域中的标识符,而不用依赖于 EL 在缺省情况下使用的顺序查找过程。

 

接下来的四个映射用来获取请求参数和请求头的值。因为 HTTP 协议允许请求参数和请求头具有多个值,所以它们各有一对映射。每对中的第一个映射返回请求参数或头的主要值,通常是恰巧在实际请求中首先指定的那个值。每对中第二个映射允许检索参数或头的所有值。这些映射中的键是参数或头的名称,但这些值是 String对象的数组,其中的每个元素都是单一参数值或头值。

 

cookie 隐式对象提供了对由请求设置的 cookie 名称的访问。这个对象将所有与请求相关联的 cookie 名称映射到表示那些 cookie 特性的 Cookie对象。

 

最后一个 EL 隐式对象 initParam 是一个映射,它储存与 Web 应用程序相关联的所有上下文的初始化参数的名称和值。初始化参数是通过 web.xml 部署描述符文件指定的,该文件位于应用程序的 WEB-INF 目录中。

 

pageContext

 

JSP 页的上下文。它可以用于访问 JSP 隐式对象,如请求、响应、会话、输出、servletContext 等。例如,${pageContext.response} 为页面的响应对象赋值。

 

pageScope

 

将页面范围的变量名称映射到其值。例如,EL 表达式可以使用 ${pageScope.objectName} 访问一个 JSP 中页面范围的对象,还可以使用 ${pageScope.objectName.attributeName} 访问对象的属性。

 

requestScope

 

将请求范围的变量名称映射到其值。该对象允许访问请求对象的属性。例如,EL 表达式可以使用 ${requestScope.objectName} 访问一个 JSP 请求范围的对象,还可以使用 ${requestScope.objectName.attributeName} 访问对象的属性。

 

sessionScope

 

将会话范围的变量名称映射到其值。该对象允许访问会话对象的属性。例如:

  ${sessionScope.name}

 

applicationScope

 

将应用程序范围的变量名称映射到其值。该隐式对象允许访问应用程序范围的对象。

 

 

param

 

将请求参数名称映射到单个字符串参数值(通过调用 ServletRequest.getParameter (String name) 获得)。getParameter (String) 方法返回带有特定名称的参数。表达式 $(param.name) 相当于 request.getParameter (name)

 

paramValues

 

将请求参数名称映射到一个数值数组(通过调用 ServletRequest.getParameter (String name) 获得)。它与 param 隐式对象非常类似,但它检索一个字符串数组而不是单个值。表达式 ${paramvalues.name) 相当于 request.getParamterValues(name)

 

header

 

将请求头名称映射到单个字符串头值(通过调用 ServletRequest.getHeader(String name) 获得)。表达式 ${header.name} 相当于 request.getHeader(name)

 

headerValues

 

将请求头名称映射到一个数值数组(通过调用 ServletRequest.getHeaders(String) 获得)。它与头隐式对象非常类似。表达式 ${headerValues.name} 相当于 request.getHeaderValues(name)

 

cookie

 

cookie 名称映射到单个 cookie 对象。向服务器发出的客户端请求可以获得一个或多个 cookie。表达式 ${cookie.name.value} 返回带有特定名称的第一个 cookie 值。如果请求包含多个同名的 cookie,则应该使用 ${headerValues.name} 表达式。

 

initParam

 

将上下文初始化参数名称映射到单个值(通过调用 ServletContext.getInitparameter(String name) 获得)。

 

特别强调:

 

1、注意当表达式根据名称引用这些对象之一时,返回的是相应的对象而不是相应的属性。例如:即使现有的 pageContext 属性包含某些其他值,${pageContext} 也返回 PageContext 对象。

 

2 注意 <%@ page isELIgnored="true" %> 表示是否禁用EL语言,TRUE表示禁止.FALSE表示不禁止.JSP2.0中默认的启用EL语言。

分享到:
评论

相关推荐

    EL表达式 隐式对象

    #### 二、EL隐式对象 EL提供了多个预定义的隐式对象,使得开发人员能够方便地访问页面上下文、请求参数、会话数据等。这些隐式对象无需显式声明即可直接使用。 ##### 1. 与范围相关的隐式对象 - **pageScope**: ...

    JavaWeb程序设计入门课件EL隐式对象共6页.pdf

    【JavaWeb程序设计入门课件EL隐式对象共6页.pdf】 这门JavaWeb程序设计入门课件主要聚焦于EL(Expression Language)隐式对象,它是一个强大的JSP(JavaServer Pages)表达式语言,用于简化JavaWeb开发中的数据访问...

    Java Web程序设计入门课件-EL隐式对象.pptx

    7.3 EL隐式对象是EL语言的一个重要特性。在JSP中,我们有9个隐式对象,比如request、response、session等,而在EL中,这个数量增加到了11个。值得注意的是,EL和JSP共享一个隐式对象——`pageContext`,但其余的隐式...

    EL表达式的隐式对象_动力节点Java学院整理

    EL表达式的隐式对象 EL表达式的隐式对象是JSP中的一种特殊对象,用于存储和访问当前Web应用程序的状态信息。EL表达式隐式对象可以分为两类:一类是pageContext对象,另一类是四个域(page、request、session、...

    EL表达式详解+实例教程

    与范围相关的EL隐式对象包括: - `pageScope`:页面范围 - `requestScope`:请求范围 - `sessionScope`:会话范围 - `applicationScope`:应用程序范围 这些对象主要用于访问不同范围内的属性值。例如,要获取存储...

    jspEL表达式和el

    JSP提供了一些预定义的EL隐式对象,如`pageContext`、`request`、`session`和`application`,它们可以直接在EL表达式中使用。此外,还有`param`和`paramValues`用于访问请求参数,`header`和`headerValues`用于访问...

    JSP-EL表达式.ppt

    EL 提供了多种隐式对象,包括: * pageContext:提供对页面属性的访问 * param:返回客户端的请求参数的字符串值 * paramValues:返回映射至客户端的请求参数的一组值 * header:返回请求头的字符串值 * header...

    jsp的一些el

    7. **EL隐式对象**:EL提供了一些预定义的对象,如`pageContext`、`request`、`session`和`application`,它们分别对应JSP的四个作用域。这些隐式对象可以用来直接访问请求参数、session属性等。 通过合理使用EL,...

    EL表达式和JSTL标签大全

    EL 中提供了多个隐式对象来简化开发过程,主要包括: - **param**:返回请求参数中单个字符串的值。 - **paramValues**:返回请求参数的一组值。 - **pageScope**、**requestScope**、**sessionScope**、**...

    el表达式的使用全集

    JSP页面中有一些预定义的EL隐式对象,例如pageContext、request、response、session和application,它们提供对Servlet API的访问。 **10. EL表达式与EL表达式变量** EL表达式可以定义和使用变量,例如`${var = ...

    EL表达式实例[文].pdf

    2. EL隐式对象: EL表达式提供了多个隐式对象,包括pageContext、request、session和application,这些对象分别对应于JSP的四个作用域。例如,`${requestScope.hello}`会直接从请求作用域中获取名为`hello`的属性,...

    jsp el表达式

    3. **EL隐式对象**:EL提供了一些预定义的对象,如`pageContext`、`request`、`response`等,可以直接在EL表达式中使用。 总结来说,JSP EL表达式是JavaWeb开发中的强大工具,它简化了数据访问,提高了开发效率,是...

    JavaWeb程序设计入门课件JSP隐式对象共8页.pdf

    5. 高级特性:除了基本的隐式对象,JSP还有EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library),它们提供了更简洁的表达式语法和标签库,进一步简化了JSP的编写。 6. 学习资源与实践: - ...

    jstl详细ppt,很适合初学者

    除了11个EL隐式对象(如`pageContext`、`requestScope`等)外,其他标识符代表作用域内的变量。 3. **EL隐式对象**:这些对象提供了对不同作用域的直接访问,例如: - `pageContext`:代表当前页面的处理。 - `...

    el表达式教程

    #### 常见的EL隐式对象 - **${param}**:返回请求参数中单个字符串的值。 - **${paramValues}**:返回请求参数的一组值。 - **${pageScope}**:页面范围的变量。 - **${requestScope}**:请求对象的变量。 - **${...

    jstl文档资料和测试例子

    6. **EL隐式对象**:如`request`, `session`, `application`, `pageContext`, `page`, `param`, `paramValues`等。 7. **EL的函数库**:如`fn:trim`, `fn:length`, `fn:split`等,它们提供了对字符串和其他类型的...

    JSP 2.0技术手册下载

    - **EL隐式对象**:EL提供了一些预定义的对象,如`pageScope`, `requestScope`, `sessionScope`, `applicationScope`,分别对应不同的作用域。 **4. JSP 2.0中的自定义标签** - **创建TLD**:定义自定义标签的元...

    jstl标签学习笔记

    **EL隐式对象** EL提供了一些预定义的对象,如 `request`, `session`, `pageContext` 等,可以直接在EL表达式中使用。 ### EL运算符 - 加法运算:`${1+2}` 结果为3。 - 空检查:`${empty username}` 检查 `...

Global site tag (gtag.js) - Google Analytics