el中的作用域对应关系
pageContext(1)
|
当前页的pageContext对象
|
pageScope
|
把page作用域中的数据映射为一个map对象
|
requestScope(2)
|
把request作用域中的数据映射为一个map对象
|
sessionScope
|
把session作用域中的数据映射为一个map对象
|
applicationScope
|
把application作用域中的数据映射为一个map对象
|
param
|
对应request.getParameter()
|
paramValues(3)
|
对应request.getParameterValues()
|
header(4)
|
对应request.getHeader()
|
headerValues
|
对应request.getHeaderValues()
|
cookie(5)
|
对应request.getCookies()
|
initParam(6)
|
对应ServletContext.getInitParamter()
|
(1)
例子中的${pageContext.request.contextPath}返回的是request.getContextPath()的值,在此例中就是/13-04,我们经常使用这个来拼接jsp中的绝对路径。
这里的${pageContext.request.contextPath}是一种特殊用法,不能使用${request.contextPath}的形式替代。
(2)
pageScope, requestScope, sessionScope, appliationScope都可以看作是Map型变量,调用其中的数据可以使用${pageScope.name}或${pageScope["name"]}的形式,这两种写法是等价的。
在某些情况下只能使用${pageScope["content-type"]},这里不能写成${pageScope.content-type},jsp无法解析连字符(-)会出现错误。
(3)
需要注意的是${paramValues.name}得到的是一个字符串数组,如果需要获得其中某个值,还需要使用${paramValues.name[0]}指定数组中的索引。
这与下面的${headerValues.name}是相似的。
(4)
${header.name}会取得http请求中的header参数,现实工作中很少用到这里的数据。
例子中使用Host是指请求访问的主机地址,包括ip和端口号。而Referer比较有趣,如果用户通过超链接跳转过来的,Referer会保存上次访问页面的地址,我们就可以通过它来统计哪些用户是从哪里转来的了。
(5)
${cookie.name}将获得对应cookie的对象,比如我们用jsp将一段cookie发送给客户端。
Cookie cookie = new Cookie("username", "Username in cookie"); response.addCookie(cookie);
创建一个名称为username,值为"Username in cookie"的Cookie对象,然后发送给客户端。
然后我们就可以使用${cookie.username}获得这个cookie了,${cookie.username.name}获得cookie名称,${cookie.username.value}获得cookie值。
(6)
ServletContext.getInitParamter()指的应用的初始变量,这些变量都是定义在web.xml中的。
<context-param> <param-name>username</param-name> <param-value>username with context param</param-value> </context-param>
${initParam.username}就会得到这里的变量值。
以上都是死记硬背的东西,建议实际用到的时候翻看一下就好了。。。。。。。。。
在javascript中,如需要与EL表达式混用,,只需在给EL表达式加上双引号。。。如下所示:
var x = "${param.message}";
分享到:
相关推荐
EL 表达式的作用域是指 EL 表达式可以访问的范围。EL 表达式可以访问以下几个范围的对象: * pageScope:当前页面的作用域,访问当前页面的变量和对象。 * requestScope:当前请求的作用域,访问当前请求的参数和...
在EL表达式中,如果没有明确指定作用域,系统会按照特定的顺序进行查找。如果在当前作用域没有找到对应的属性,则会继续向上一级作用域查找,直到找到为止。 ### EL表达式的高级用法 #### 1. **参数和参数值** EL...
EL 表达式的主要作用是获得四大域中的数据,即 pageContext、request、session 和 application 四个域中的数据。EL 表达式的格式为 ${EL 表达式},其中 EL 表达式可以是任何有效的 Java 表达式。 EL 表达式可以获得...
EL表达式主要用于简化JSP页面中的代码,提高可读性和可维护性。 **EL表达式的基本语法** EL表达式通常以"$"或 "#{}" 开头,如 `${expression}` 或 `#{expression}`。这里的`expression`是一个变量或方法调用,它...
当使用EL表达式时,如果某个变量没有在当前作用域中定义,则EL会依次向上搜索更高层次的作用域,直到找到为止。如果没有找到,则返回`null`。 #### 三、EL表达式的特性与功能 - **启用或禁用EL**:可以通过`...
1. 访问变量:EL 表达式可以访问 JSP 页面中的变量,包括 page、request、session 和 application 等四个作用域中的变量。 例如:${user.name} 访问 user 对象的 name 属性 2. 进行逻辑操作:EL 表达式可以进行...
EL表达式在JSP中扮演着重要角色,它提供了一种简洁的方式来获取和操作JavaBean属性,以及与Java Servlets和JSP作用域对象进行交互。 **二、EL表达式的结构** EL表达式通常以`$`符号开头,后跟大括号`{}`,如`${...
它提供了一种简洁的方式来访问JavaBean属性、集合、上下文作用域中的对象以及进行基本运算。EL表达式的主要目标是提高JSP页面的可读性和可维护性,减少脚本代码的数量。 ### EL表达式的基本语法 EL表达式通常以`$`...
JSTL的一个关键特性是它支持EL,使得开发者可以通过简单的表达式来获取和设置页面作用域中的数据,而不是使用复杂的JSP脚本。 EL表达式是JSP中一种强大的数据访问机制,其语法类似于JavaScript,但它的主要目的是与...
EL表达式语言提供了几个内置的默认变量,用于访问不同的作用域中的对象。这些默认变量包括: - **pageScope**:表示当前页面的作用域。 - **requestScope**:表示当前HTTP请求的作用域。 - **sessionScope**:表示...
### EL表达式详解 EL(Expression Language)表达式是JavaServer Pages (JSP) 技术中的一个关键组件,用于简化页面中数据访问的...通过理解EL表达式的语法、作用域和特殊功能,开发者可以更高效地构建动态网页应用。
### EL表达式语言详解 #### 9.1 概述 在JSP页面开发中,为了提高代码的可读性和可维护性,开发者们逐渐转向使用标签库来替代传统的Java片段语言来实现页面的显示逻辑。然而,自定义标签虽然灵活,但也容易导致重复...
它的主要目标是提供一种简单的方式来访问存储在作用域中的对象属性,以及执行基本的算术和逻辑操作。EL表达式通常在`${}`中书写,比如`${user.name}`用来获取名为`user`的对象的`name`属性。 **JSTL中的核心标签库...
在书写EL表达式时,可以通过指定作用域来获取不同范围内的对象值。 - **pageScope**:页面范围,只存在于当前请求响应周期内。 - **requestScope**:请求范围,当前HTTP请求期间有效。 - **sessionScope**:会话范围...
**JSP EL表达式详解** JavaServer Pages (JSP) Expression Language(EL)是JSP 2.0及更高版本中引入的一种轻量级、简洁的脚本语言,用于简化在JSP页面中访问JavaBean属性和其他Java对象的流程。EL表达式主要用于...
- 更多其他隐式对象,如`page`, `request`, `response`, `session`, `application`等,直接代表它们对应的JSP作用域。 **四、使用示例** - 访问请求参数:`${param.name}` 等同于 `request.getParameter("name")`...
3. **EL的上下文**:理解EL表达式的上下文,包括变量作用域(page, request, session, application)以及它们之间的区别。 4. **EL的异常处理**:了解当EL表达式计算出错时,如何配置错误处理策略。 5. **性能优化...
EL表达式语言提供了一种简洁的方式来访问JavaBeans属性、JSP作用域中的对象以及其他Java对象。EL表达式的语法通常是 `${expression}`,其中`expression` 是要计算的表达式。 **EL表达式的优势** 1. **简洁性**:EL...