`
leiwuluan
  • 浏览: 703504 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

EL表达示的基本用法

阅读更多

el 表达示。。。。。

EL 简介

EL 全名为Expression Language,它原本是JSTL 1.0为方便存取数据所自定义的语言。

EL 是从 JavaScript 脚本语言得到启发的一种表达式语言,它借鉴了 JavaScript 多类型转换无关性的特点。在使用 EL scope 中得到参数时可以自动转换类型,因此对于类型的限制更加宽松。 Web 服务器对于 request 请求参数通常会以 String 类型来发送,在得到时使用的 Java 语言脚本就应该是 request.getParameter(XXX) ,这样的话,对于实际应用还必须进行强制类型转换。而 EL 就将用户从这种类型转换的繁琐工作脱离出来,允许用户直接使用 EL 表达式取得的值,而不用关心它是什么类型。

 

到了JSP 2.0 之后,EL 已经正式纳入成为标准规范之一。因此,只要是支持Servlet 2.4 / JSP2.0 Container,就都可以在JSP 网页中直接使用 EL 了。

除了JSP 2.0 建议使用EL 之外,JavaServer Faces(JSF)EL 纳入规范,由此可知,EL 如今已经是一项成熟、标准的技术。

 

注意:

假若您所用的Container 只支持Servlet 2.3/JSP 1.2,如:Tomcat 4.1.29,您就不能在JSP 网页中直接使用EL,必须安装支持Servlet 2.4 / JSP 2.0 Container

 

<2>EL 语法

EL 语法很简单,它最大的特点就是使用上很方便。接下来介绍EL 主要的语法结构:

语法:${表达式或变量}

示例一:

<html>

       <body>

              ${sampleValue + 1} <br>

       </body>

</html>

 

示例二:从Session的范围中,取得用户的性别

依照之前JSP Scriptlet的写法如下:

User user = (User)session.getAttribute("user");

String sex = user.getSex( );

 

使用EL 写法如下:

${sessionScope.user.sex}

 

两者相比较之下,可以发现EL 的语法比传统JSP Scriptlet 更为方便、简洁。

 

<3>”与“[ ] 运算符

l         EL 提供 . [ ] 两种运算符来存取数据。下列两者所代表的意思是一样的:

${sessionScope.user.sex}

等于

${sessionScope.user["sex"]}

 

l         . [ ] 也可以同时混合使用,如下:

${sessionScope.shoppingCart[0].price}

 

回传结果为shoppingCart中第一项物品的价格。

 

l         两者的差异:

(1)   当要存取的属性名称中包含一些特殊字符,如 . 等并非字母或数字的符号,就一定要使用 [ ],例如:

${user.My-Name }

 

 

(2)   我们来考虑下列情况

${sessionScope.user[data]}

此时data 是一个变量,假若data的值为"sex"时,那上述的例子等于${sessionScope.user.sex}

假若data 的值为"name"时,它就等于${sessionScope.user.name}。因此,如果要动态取值时,就可以用上述的方法来做,但 . 无法做到动态取值。

 

<4>EL 隐含对象

EL本身也有自己的隐含对象。EL 隐含对象总共有11 个:

隐含对象

类 型

说 明

pageContext

javax.servlet.ServletContext

表示此JSP pageContext

pageScope

java.util.Map

取得page范围的属性名称所对应的值

requestScope

java.util.Map

取得request 范围的属性名称所对应的值

sessionScope

java.util.Map

取得session 范围的属性名称所对应的值

applicationScope

java.util.Map

取得application 范围的属性名称所对应的值

param

java.util.Map

如同

request.getParameter(String name)。回传String 类型的值

paramValues

java.util.Map

如同

request.getParameterValues(String

name)。回传String []类型的值

header

java.util.Map

如同

request.getHeader(String name)。回传String 类型的值

headerValues

java.util.Map

如同

request.getHeaders(String name)。回传String []类型的值

cookie

java.util.Map

如同request.getCookies( )

initParam

<span style="c

分享到:
评论

相关推荐

    EL表达式的使用方法

    ### EL表达式的使用方法 #### 一、简介 在Java Web开发中,EL(Expression Language)表达式是一种非常实用的功能,它允许开发者在JSP页面中动态获取对象属性的值或者执行简单的运算操作。通过使用EL表达式,可以...

    EL表达式的使用详解

    本文将详细介绍 EL 表达式的使用方法和应用场景。 一、EL 表达式的基本概念 EL 表达式是一种基于 XML 的表达式语言,用于访问和操作 Java 对象的属性。它提供了一种简单的方式来访问 Java 对象的属性,例如访问...

    el表达式用法部分解说

    本文将详细解释EL表达式的使用方法及其应用场景,帮助开发者更好地理解和掌握这一技术。 #### EL表达式的基础语法 EL表达式总是用大括号`{}`括起来,并且前面有一个美元符号`$`作为前缀,其基本形式为`${...

    EL表达式的语法介绍

    EL 表达式可以被解析成数值表达式和方法表达式,其中取值表达式用于引用一个值,而方法表达式则是关联一个方法。 1.1 EL 表达式语法 EL 表达式可以分为三种类型:eval-expression、literal-expression 和 ...

    EL表达式使用文档,方便快速使用EL表达式.pdf

    EL 表达式还可以从域中取出数据,相当于使用 request.getParameter()、request.getParameterValues()、param、paramValues 等方法来获取请求参数和请求头信息。 在 EL 表达式中,还有 11 个内置对象,可以用于简化...

    EL表达式运算符用法

    本篇文章将详细介绍EL表达式中的各种运算符及其用法,包括逻辑运算符、关系运算符、算术运算符等,并通过具体的例子进行说明,帮助读者更好地理解和掌握EL表达式的使用技巧。 #### 二、EL表达式基础 EL表达式通常...

    EL表达式包括字符串处理,时间日期的格式化,数字处理

    #### 一、EL表达式的概述与基本使用 EL(Expression Language),即表达式语言,是JavaServer Pages (JSP) 2.0标准的一部分,用于简化JSP页面中对数据访问的操作。它允许开发者通过简单的语法在JSP页面中访问后端...

    EL表达式练习 EL表达式练习

    **EL表达式的基本语法** EL表达式通常以"$"或 "#{}" 开头,如 `${expression}` 或 `#{expression}`。这里的`expression`是一个变量或方法调用,它可以包含属性访问、算术运算、比较运算、逻辑运算等多种元素。例如,...

    jsp页面中EL表达式被当成字符串处理不显示值问题的解决方法

    通过上述方法,可以有效解决EL表达式被错误地作为字符串处理的问题。但同时,了解EL表达式的另一个新特性也很重要,那就是它作为JSP 2.0中的一个主要新特性,为JSP页面提供了表达语言支持,让访问JSP隐含对象和...

    el表达式EL表达式言语和JSTL

    EL表达式经常与JSTL一起使用,尤其是在JSTL的`c`(Core)标签库中。例如,`&lt;c:if&gt;`和`&lt;c:forEach&gt;`标签可以配合EL表达式进行条件判断和循环操作。通过这种方式,开发者可以将业务逻辑和视图层分离,提高代码的可读性...

    el表达式介绍 el表达式使用帮助文档

    或使用方法调用 --%&gt; Welcome, ${user.greet()}! ``` ### 总结 EL表达式是JSP中强大的数据绑定工具,极大地提高了开发效率和代码质量。通过熟练掌握EL表达式,开发者可以编写出更加简洁、清晰的JSP页面,提升整个...

    EL表达式(很全很强大)

    #### 一、EL表达式的语法结构及使用 EL(Expression Language)是一种简化了的数据访问语言,用于获取JavaBean属性值或调用其方法等操作。其基本语法结构为`${expression}`,这使得开发者能够在JSP页面上以更简洁的...

    JSTL自定义EL表达式

    `FunctionMapper`接口定义了一个`resolveFunction`方法,该方法会在解析EL表达式时被调用,用于映射函数名到实际的Java方法。 下面是一个创建自定义EL表达式的步骤概述: 1. 创建`FunctionMapper`实现类:你需要...

    jsp中的EL表达式简介

    【JSP EL表达式简介】 EL(Expression Language)是JavaServer Pages(JSP)中的一种简洁的表达式语言,设计的初衷是为了简化JSP页面的编写。EL受到ECMAScript和XPath表达式语言的启发,提供了更高效的方式来访问和...

    简单使用EL表达式标签

    EL表达式通常以`${}`包裹,其基本语法结构如下: `${expression}` 这里的`expression`可以是简单的属性引用、算术运算、逻辑运算以及函数调用等。例如,如果有一个名为`user`的JavaBean,其中有一个`name`属性,...

    EL表达式使用详解

    - 在EL表达式中,不能使用对象的实例方法。 - EL表达式中的数据操作仅限于读取,不能进行赋值等写操作。 EL表达式已经成为Java Web开发中处理数据存取的重要工具,特别是在使用JSP和JSF技术时。熟悉EL表达式的使用...

    EL表达式的应用

    这个文档详细阐述了JSTL的API、功能和用法,包括如何使用EL表达式与JSTL标签进行交互。 通过阅读这份文档,你可以了解到: 1. **JSTL标签**:了解JSTL的核心标签库、XML处理标签库(`fmt`、`function`、`nls`、`sql...

    El表达式的用法

    掌握EL表达式的开发,包括jstl表达式的案例使用,简单清晰

    EL表达式语言PPT

    EL表达式PPT,详细讲解了EL表达式用法

Global site tag (gtag.js) - Google Analytics