EL(Expression Language)

EL语言介绍
表达式语言(Expression Language)是一种简化的数据访问方式,使用EL可以方便的以标记格式访问JSP的隐含对象和JavaBean组件。它不是一种通用的程序语言,而只是数据访问语言

 

 

EL包含11个内置对象

pageContext:代表该页面的 PageContext 对象,与JSP的 pageContext 对象相同
pageScope:用于获取 page 范围的属性值
requestScope:用于获取 request 范围的属性值
sessionScope:用于获取 sessionScope 范围的属性值
applicationScope:用于获取 applicationScope 范围的属性值
param:用于获取请求的参数值
paramValues:用于获取请求的参数值,数组
header:用于获取请求头的属性值
header:用于获取请求头的属性值,数组
initParam:用于获取 Web 应用的初始化参数
cookie:用于获取应用的 Cookie 值


在JSTL中,EL语言只能在属性值中使用。EL语言只能通过建立表达式${exp1}来进行调用。在属性值中使用表达式有三种方式。


1. value属性包含一个表达式
<some:tag value="${expr}"/>
在这种情况下,表达式值被计算出来并根据类型转换规则赋值给value属性。比如:<c:out value="${username}" />中的${username}就是一个EL,它相当于JSP语句<%=request.getAttribute("username")%>或<%=session.getAttribute("username")%>


2. value属性包含一个或多个属性,这些属性被文本分割或围绕
<some:tag value="some${expr}${expr}text${expr}"/>
在这种情况下,表达式从左到右进行计算,并将结果转换为字符串型(根据类型转换规则),并将结果赋值给value属性


3. value属性仅仅包含文本
<some:tag value="sometext"/>
在这种情况下,字符串型属性value将根据类型转换规则转换为标签所希望的类型。

 

 

 

 EL语言的操作符
1. 存取器

为了获得集合中的属性,EL支持以下两种操作
1) 使用.操作符来获得有名字的属性。例如:表达式${user.username}表明对象user的username属性
2) 使用[]操作符来获得有名字或按数字排列的属性。例如:${user["username"]}
说明:表达式${user["username"]}和表达式${user. username }含义相同
         表达式${row[0]} 表明row集合的第一个条目。
         在这里user是一个类的对象,它的属性username必须符合标准JavaBean的规范,
         即必须为username属性定义相应的getter、setter方法。

 

2. 操作符

算术运算符  +、-、*、/(或 div)和 %(或 mod)

关系运算符  ==(或 eq)、!=(或 ne)、<(或 lt)、>(或 gt)、<=(或 le)和 >=(或 ge)

逻辑运算符  &&(或 and)、||(或 or)和 !(或 not)

验证运算符  empty

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值