首页 > 代码库 > EL表达式

EL表达式

EL(Expressin Language) jsp的一种表达式,可以简化对jsp页面对变量和对象的访问。

我们这里用到的EL表达式是简单的 如图


 

EL四个范围:

EL四个范围是与Jsp的四个作用域想对应的分别是 PageRequestSession Application。默认为Page查找

EL变量存取

使用规则为:${Expressin}

如我们要取得session中的用户名称

若是使用jsp之前的 Scriptlet写法

User user =(User)session.getAttribute("user");
String sex =user.getSex( );

使用EL写法

$(essionScope.user.sex}

明显不同,这里用的是user的私有属性,而不再是get属性名称了.

.[]运算符

使用 . 和 []都可以导航数据。两者的都可以获取一边的数据。

差异:使用[]场合

1动态获取数据

2存取属性有特殊字符-

${user.My-Name }

上述是不正确的方式,应当改为:${user["My-Name"]

范围内的单值存取

范例

${pageSocpe.username} //获取page范围内username变量

数组集合的获取

EL表达式中,若想循环获取集合中的值,需要JSTL的帮助。否则只能输出集合中的某一个值。

这里简单介绍下使用foreach

<c:forEach items="${users}" var="user">
<tr>
<td>${user.username}</td>
<td>${user.age}</td>
<td>${user.group.name}</td>
</tr>
</c:forEach>

 items为集合,var 为变量,就像集合中的每条数据,和以前的集合操作很类似。

以上是对EL表达式学习的基本了解,当然了,这里仅是对常用的进行了描述

认识 :

EL表达式基于PageContext属性的,不需要引入任何命名空间。它的变量定义简化的操作符号,同时它具有操作符的隐士转换,精简的jsp页面样式,简化了不少代码。是一个很好的应用。