`
whoosh
  • 浏览: 235546 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

JSF入门六(JSF Expression Language)

    博客分类:
  • JSF
 
阅读更多

本文转载自:

http://www.javaworld.com.tw/confluence/pages/viewpage.action?pageId=2630

 

JSF EL是以#开始 ,将变量或运算式放置在 { 与 } 之间,例如:#{someBeanName}

 

变量名称可以是faces-config.xml中定义的名称 ,如果是Bean的话,可以通过使用 '.' 运算符来存取它的属性,例如:

<f:view>
<h:outputText value="#{userBean.name}"/>
</f:view>

EL的变量名也可以程序执行过程中所声明的名称,或是JSF EL预定义的隐含对象,例如下面的程序使用param隐含对象来取得使用者输入的参数:

<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<%@page contentType="text/html; charset=GB2312"%>
<html>
<head>
<title></title>
</head>
<body>
<f:view>
<b> 您好, <h:outputText value="#{param.name}"/> </b>
</f:view>
</body>
</html>

param是JSF EL预定义的隐含对象变量 ,它代表request所有参数的集合,实际是一个java.util.Map类型对象,JSF所提供的隐含对象,大致上对应于JSP隐含对象,不过JSF隐含对象移除了pageScope与pageContext,而增加了facesContext与view ,它们分别对应于 javax.faces.context.FacesContext与javax.faces.component.UIViewRoot。

对于Map类型对象,我们可以使用 '.' 运算符指定key值来取出对应的value,也可以使用 [ 与 ] 来指定,例如:

<f:view>
<b> 您好, <h:outputText value="#{param['name']}"/> </b>
</f:view>

 在 [ 与 ] 之间,也可以放置其它的变量值,例如:

<f:view>
<h:outputText value="#{someBean.someMap[user.name]}"/>
</f:view>

 如果变量是List类型或阵列的话,则可以在 [] 中指定索引,例如:

<f:view>
<h:outputText value="#{someBean.someList[0]}"/>
<h:outputText value="#{someBean.someArray[1]}"/>
<h:outputText
value="#{someBean.someListOrArray[user.age]}"/>
</f:view>

 您也可以指定字面常数,对于true、false、字符串、数字,JSF EL会尝试进行转换,例如:

<h:outputText value="#{true}"/>
....
<h:outputText value="#{'This is a test'}"/>

如果要输出字符串,必须以单引号 ' 或双引号 " 括住 ,如此才不会被认为是变量名称。
在声明变量名称时,要留意不可与JSF的保留字或关键字同名,例如不可取以下这些名称:

true false null div mod and or not eq ne lt gt le ge instanceof empty

 

分享到:
评论

相关推荐

    JSF入门+JSF web实战+JSF2

    此外,还会讲解EL(Expression Language)和 Managed Beans,这两个是JSF中用于数据绑定和业务逻辑处理的关键技术。 《JSF Web应用实战开发》则深入到实际开发中,提供了许多实战案例,让读者了解如何在实际项目中...

    JSF入门PDF书籍

    **1.5 JSF Expression Language (EL)** - **语言基础**: - EL是一种简洁的语言,用于在JSF组件中表达变量和方法调用。 - 介绍EL的基本语法、变量作用域和常见用法。 **1.6 国际化信息** - **国际化支持**: - ...

    JSF入门与标签_JSF入门与标签.

    JSF标签通过EL(Expression Language)表达式与Managed Beans交互,如`${bean.property}`,这使得数据绑定变得简单直观。 总结来说,JSF为Java Web开发提供了一个强大的框架,通过组件化和声明式编程简化了开发过程...

    值得看的jsf入门教程

    - 视图是由UI组件组成的,这些组件通过EL(Expression Language)与后台bean的数据进行绑定。 4. **EL表达式** - EL是一种轻量级的脚本语言,用于访问和操作JavaBean中的属性。 - 例如,`${user.name}`可以获取...

    JSF入门必读——JSF入门基础

    JSF Expression Language是用于访问和操作后台Bean属性、方法以及上下文数据的语言。EL表达式可以在JSF页面上直接嵌入,用于动态地生成内容或控制组件行为。 4. 国际化 JSF支持国际化,允许开发者为不同的语言和...

    清晰版--JSF入门.pdf

    **1.5 JSF表达式语言(Expression Language)** JSF表达式语言是一种用于在JSF视图组件中引用Managed Beans的属性和方法的语言。它使用EL语法(如`#{bean.property}`)来获取或设置Managed Beans中的值。 **1.6 国际...

    java JSF入门

    JSF Expression Language 是一种轻量级的脚本语言,用于在JSF应用中访问和操作Java对象。EL允许你在JSP或XHTML页面中直接引用JavaBean属性,执行基本的算术和逻辑运算,以及调用方法。 #### 1.6 国际化信息 JSF ...

    jsf入门(pdf格式)

    JSF还支持EL(Expression Language),这允许开发者在页面上动态地访问和操作后台bean中的属性。 在"jsf标签"部分,我们会学习到各种JSF标签的用法,包括基本组件、导航组件、表单组件和数据展示组件等。例如,`...

    一个简单的JSF入门Demo

    Facelets文件通常具有`.xhtml`扩展名,可以包含JSF组件、EL(Expression Language)表达式以及CSS和JavaScript。 ### 6. 源码分析 在“JSFDemo”压缩包中,我们可能看到以下结构: - `webapp`: 包含Web应用的目录...

    jsf快速入门教程

    JSF的Expression Language(EL)用于在视图和Managed Bean之间进行数据绑定。例如,`#{bean.property}`表示访问名为`bean`的Managed Bean的`property`属性。 **7. 验证与转换** JSF内置了验证和转换机制,可以确保...

    JSF入门(中文pdf)

    再者,JSF支持EL(Expression Language)和Managed Beans,这是两个重要的绑定和管理Java对象的工具。EL用于在视图层与后台数据之间建立动态关联,允许在组件中直接引用Bean的属性。Managed Beans是JSF中的业务逻辑...

    jsf入门实例教程

    这里,`h:inputText`和`h:commandButton`是JSF组件,`#{bean.name}`和`#{bean.submit}`则是EL(Expression Language)表达式,用于绑定到后台Bean的属性和方法。 **四、JSF Managed Bean** Managed Bean是JSF中的...

    JSF入门.zip

    数据可以通过EL(Expression Language)绑定到UI组件。 4. **控制器(Controller)**:JSF的控制器由Faces Servlet实现,它负责处理用户请求,调用后台方法,更新模型并决定视图的呈现。 5. **生命周期(Life ...

    jsf入门+标签

    使用EL表达式**:JSF结合了Expression Language(EL),允许在JSP/Facelets页面中直接引用Managed Beans的属性和方法,如`${bean.property}`。 ### 学习资源 - 《jsf入门》简体中文版1.pdf:这本书可能涵盖了JSF...

    JSF入门教材简体中文版(html版 pdf版)

    3. **EL(Expression Language)**:EL用于在JSF中访问后台bean的属性,它是声明式绑定数据的主要方式,简化了视图和控制器之间的通信。 4. **managed beans**:JSF中的核心组件,用于存储和处理业务逻辑。Managed ...

    JSF入门(一)

    EL(Expression Language)** EL是用于在JSF中访问和操作Java对象的简洁表达式语言。它可以用来获取或设置bean的属性值,执行方法,并进行基本的算术和比较操作。EL表达式通常出现在JSF组件的属性中,用于将组件与...

    《JSF入门》简体中文版修正版(含页面间导航)

    3. **JSF Expression Language (EL)** EL是JSF中的一个重要组成部分,它允许在页面中直接访问后台Bean的属性,实现数据绑定。在"JSF Expression Language.htm"中,你会看到如何使用EL表达式来简化页面和Bean之间的...

    JSF 入门实例 代码

    在实际开发中,了解**JSF的EL(Expression Language)** 和**JSF的Faces Context** 也非常重要。EL是一种表达式语言,用于在JSF组件中获取和设置属性值,而Faces Context是JSF运行时的主要上下文对象,包含了处理...

    《JSF入门》培训教程PPT

    Expression Language(EL)是JSF中用于访问和操作数据的强大工具。EL可以用来获取Managed Bean的属性值,或者调用其方法。例如,`#{bean.property}`用于获取名为`bean`的Managed Bean的`property`属性。 六、JSF与...

    JSF入门级教程

    1.5 JSF Expression Language JSF框架提供了一个表达式语言,允许开发者在JSF页面中使用表达式。JSF表达式语言支持以下几种运算符: * 算术运算符:+、-、*、/等 * 比较运算符:==、!=、&gt;、&lt;等 * 逻辑运算符:&&、...

Global site tag (gtag.js) - Google Analytics