当前位置: 网学 > 编程文档 > JSP > 正文

JSP 标准标记库基础知识学习

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/17
下载{$ArticleTitle}原创论文样式
不抛出异常。如果应用 EL 存取器的对象(例如,${foo.bar} 

和 ${foo[\"bar\"]} 中的 foo 标识符)是 null,那么应用存取器的结果也是 null。事实证明,在大多数情况下,这是一个相当有用的行为,不久您就会了解这一点。 

最后,点运算符和方括号运算符可能实现某种程度的互换。例如,也可以使用 
${user[\"firstName\"]} 来检索 user 对象的 firstName 特性,正如可以用 ${commands.dir} 获取与 commands 映射中的 \"dir\" 键相关联的值一样。 

运算符 
EL 还可以通过使用标识符和存取器,遍历包含应用程序数据(通过限制了作用域的变量公开)或关于环境的信息(通过 EL 隐式对象)的对象层次结构。但是,只是访问这些数据,通常不足以实现许多 JSP 应用程序所需的表示逻辑。 

最终,EL 还包括了几个用来操作和比较 EL 表达式所访问数据的运算符。表 2 中汇总了这些运算符。 

表 2. EL 运算符 

类别       运算符 
算术运算符   +、-、*、/(或 div)和 %(或 mod) 
关系运算符   ==(或 eq)、!=(或 ne)、<</code>;(或 lt)、>;(或 gt)、<=(或 le)和 

>;=(或 ge) 
逻辑运算符   &&(或 and)、||(或 or)和 !(或 not)  [Page]
验证运算符   empty 




算术运算符支持数值的加法、减法、乘法和除法。还提供了一个求余运算符。注:除法和求余运算 

符都有替代的、非符号的名称(为的是与 XPath 保持一致)。清单 5 中显示了一个演示算术运算 

符用法的示例表达式。对几个 EL 表达式应用算术运算符的结果是将该算术运算符应用于这些表达 

式返回的数值所得的结果。 

清单 5. 利用算术运算符的 EL 表达式 
${item.price * (1 + taxRate[user.address.zipcode])} 




关系运算符允许比较数字或文本数据。比较的结果作为布尔值返回。逻辑运算符允许合并布尔值, 

返回新的布尔值。因此,可以将 EL 逻辑运算符应用于嵌套的关系或逻辑运算符的结果,如清单 6 

所示。 

清单 6. 利用关系和逻辑运算符的 EL 表达式 
${(x >;= min) && (x <= max)} 




最后一种 EL 运算符是 empty,它对于验证数据特别有用。empty 运算符采用单个表达式作为其变 

量(也即,${empty input}),并返回一个布尔值,该布尔值表示对表达式求值的结果是不是“空 

”值。求值结果为 null 的表达式被认为是空,即无元素的集合或数组。如果参数是对长度为零的 

String 求值所得的结果,则 empty 运算符也将返回 true。 

表 3 显示了 EL 运算符的优先级。正如清单 5 和 6 所示,可以用圆括号对表达式分组,高于普通 

的优先级规则。 

表 3. EL 运算符优先级(自顶到底,从左到右) 

, . 
() 
unary -、not、!、empty 
*、/、div、%、mod 
+、binary - 
() <</code>;

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号