JSF表达式语言

来源:互联网 发布:手机网络电视直播大全 编辑:程序博客网 时间:2024/06/06 00:46

JSF的表达式语言(EL)的形式跟jSP的表达式语言的形式类似:#{…}。EL的主要用途是使你可以引用和更新bean的属性,或者执行简单的语句,而不用写完整的Java代码。
1.JSF EL基于JSP 2.0中的表达式语言,它的用法几乎跟JSP2.0中的表达式语言*一样,但二者仍有一些关键不同:*
2.JSF使用(#)来标记表达式的开始,而JSP使用($);
3.JSF表达式是双向的。即它可以引用属性的值也可以更新之;
4.JSF EL也允许引用对象方法;
5.某些JSP特定的特征无效,比如页面上下文范围(page);
6.JSF EL表达式可以通过常规Java代码求解(结果是可以不需要JSP);
7.JSF EL不官方支持函数。
JSF EL也支持“.”和“[]”取值。它支持全范围的算术运算、逻辑运算与关系运算:
1. 算术运算有:
加法 (+), 减法 (-), 乘法 (*), 除法 (/ or div) 与余除 (% or mod) 。
如同在Java语法一样 ( expression ? result1 : result2)是个三元运算,expression为true显示result1,false显示result2

2. 逻辑运算:
and(或&&)、or(或!!)、not(或!)。

3. 关系运算:
小于Less-than(<、lt)、大于Greater-than (>、gt)、小于或等于Less-than-or-equal(<=、le)、大于或等于Greater-than-or-equal(& gt;=、ge)、等于Equal(==、eq)、不等于Not Equal(!=、ne),由英文名称可以得到lt、gt等运算子之缩写词

4. Empty:
用来测试空值(null、空字符串、数组、Map或者没有值的Collection)

JSF EL能搜索Java Web应用的三个范围:application、session、request中以匹配特定关键字的对象。因为JSF一定要锁定到JSP,所以它不支持 page范围。JSF EL支持的隐含变量有:cookie、header、headerValues、initParam、param、paramValues、 applicationScope、sessionScope、requestScope、还有facesContext(当前请求的 FacesContext实例)和view(当前视图)。

原创粉丝点击