天天看点

JSF入门笔记二

一、简单的导航  Navigation

我们在修改 faces-config.xml

<navigation-rule> --导航规则

  <from-view-id>/pages/index.jsp</from-view-id> View Id 在JSF 中的View Id 是从Web应用程序的环境相对路径开始计算,设定时都是以 / 作为开头的

<from-view-id> 是个选择性的定义,它规定了来源页面的条件

<navigation-case>中定义各种导览条件

<from-outcome>中定义当表单结果符合的条件时,各自改导向哪一个目的页面,目的页面是在<to-view-id>中定义

二、JSF Expression Language

JSF Expression Language 搭配JSF标签来使用,是用来存取数据对象的一个简易语言。

  JSF EL 是以#开始,将变量或运算式放在{}之间,变量名称可以是faces-config.xml中定义的名称如果是Bean的话,可以通过使用 ‘.’运算符来存取它的属性,例如:

 <f:view>

  <h:outputText value="#{user.name}"></h:outputText>

    </f:view>

EL的变量名也可以程序执行过程中所声明的名称,或者是JSF EL预定义的隐含对象,

 <f:view>

  <h:outputText value="#{param.name}"></h:outputText>

    </f:view>

 <f:view>

        <h:outputText value="#{param.['name']}"></h:outputText>

    </f:view>

在[]之间,也可以放置其他的变量值

 <f:view>

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

</h:outputText>

    </f:view>

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

<h:outputText value="#{someBean.someList[0]}">

</h:outputText>

<h:outputText value="#{someBean.someArray[0]}">

</h:outputText>

指定字面常数,对于true、false、字符串、数字、JSF EL会尝试进行转换

<h:outputText value="#{true}">

</h:outputText>

<h:outputText value="#{hello world}">

</h:outputText>

三、JSF 的保留字或关键字

true false null div  mod and or not eq(equals)  ne(no equals) lt gt le ge instanceof

使用EL,您可以直接实行一些算术运算、逻辑运算与关系运算,其使用就如同在一般常见的程序语言中之运算。

运算符有 +、-、×、/ or div、余除 % or mod

三元运算

#{(1==2)?3:4} (expression?result1:result2) expression为true 显示result1,false 显示result2.

四、JSF 国际化信息

资源文件名称以 .properties为结尾。

资源文件名称由basename加上语言与地区来组成如

basename.properties

basename_en.properties

basename_zh_CN.properties(待续) 

继续阅读