<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Java-Android-jwebee
    Java-Android-jwebee
    對IT人來說,要成為一個優秀的技術型管理者,除了需要具備扎實的技術基礎之外,還應該培養良好的人際關系能力、談判與溝通技能、客戶關系與咨詢技能、商業頭腦和財務技能以及創新意識,此外還要有巧妙的激勵技巧和化解沖突與解決突發問題的能力.
    JSF Expression Language 搭配 JSF 標籤來使用,是用來存取資料物件的一個簡易語言。

     

    JSF EL是以#開始,將變數或運算式放置在 { 與 } 之間,例如:
     
    #{someBeanName}

     

    變數名稱可以是faces-config.xml中定義的名稱,如果是Bean的話,可以透過使用 '.' 運算子來存取它的屬性,例如:
     
    ...
    <f:view>
    <h:outputText value="#{userBean.name}"/>
    </f:view>
    ...

     

    在JSF標籤的屬性上," 與 " (或'與')之間如果含有EL,則會加以運算,您也可以這麼使用它:
     
    ...
    <f:view>
    名稱, 年齡:<h:outputText
    value="#{userBean.name}, #{userBean.age}"/>
    </f:view>
    ...

     

    一個執行的結果可能是這樣顯示的:
     
    名稱, 年齡:Justin, 29

     

    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=Big5"%>

    <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

     

    使用EL,您可以直接實行一些算術運算、邏輯運算與關係運算,其使用就如同在一般常見的程式語言中之運算。

     

    算術運算子有:加法 (+), 減法 (-), 乘法 (*), 除法 (/ or div) 與餘除 (% or mod) 。下面是算術運算的一些例子:
    運算式 結果
    #{1} 1
    #{1 + 2} 3
    #{1.2 + 2.3} 3.5
    #{1.2E4 + 1.4} 12001.4
    #{-4 - 2} -6
    #{21 * 2} 42
    #{3/4} 0.75
    #{3 div 4} 0.75,除法
    #{3/0} Infinity
    #{10%4} 2
    #{10 mod 4} 2,也是餘除
    #{(1==2) ? 3 : 4} 4

     

    如同在Java語法一樣 ( expression ? result1 : result2)是個三元運算,expression為true顯示result1,false顯示result2。

     

    邏輯運算有:and(或&&)、or(或!!)、not(或!)。一些例子為:
    運算式 結果
    #{true and false} false
    #{true or false} true
    #{not true} false

     

    關係運算有:小於Less-than (< or lt)、大於Greater-than (> or gt)、小於或等於Less-than-or-equal (<= or le)、大於或等於Greater-than-or-equal (>= or ge)、等於Equal (== or eq)、不等於Not Equal (!= or ne),由英文名稱可以得到lt、gt等運算子之縮寫詞,以下是Tomcat的一些例子:
    運算式 結果
    #{1 < 2} true
    #{1 lt 2} true
    #{1 > (4/2)} false
    #{1 > (4/2)} false
    #{4.0 >= 3} true
    #{4.0 ge 3} true
    #{4 <= 3} false
    #{4 le 3} false
    #{100.0 == 100} true
    #{100.0 eq 100} true
    #{(10*10) != 100} false
    #{(10*10) ne 100} false

     

    左邊是運算子的使用方式,右邊的是運算結果,關係運算也可以用來比較字元或字串,按字典順序來決定比較結果,例如:
    運算式 結果
    #{'a' < 'b'} true
    #{'hip' > 'hit'} false
    #{'4' > 3} true

     

    EL運算子的執行優先順序與Java運算子對應,如果有疑慮的話,也可以使用括號()來自行決定先後順序。

     




    jwebee

    我的個人網站
    posted on 2008-05-22 12:38 周行 閱讀(661) 評論(0)  編輯  收藏 所屬分類: JSF
    Java-Android-jwebee
    主站蜘蛛池模板: 亚洲日本乱码一区二区在线二产线| 午夜成人免费视频| 亚洲国产精品综合久久一线| 亚洲精品无码高潮喷水A片软| 夫妻免费无码V看片| 九九精品国产亚洲AV日韩| 国产免费爽爽视频免费可以看| 日韩亚洲综合精品国产| 亚洲国产精品成人| free哆拍拍免费永久视频| 亚洲一区AV无码少妇电影☆| 日韩成人免费视频| 亚洲国产精品综合一区在线| 成人黄动漫画免费网站视频 | 精品亚洲成a人片在线观看少妇| 91视频免费网址| 国产.亚洲.欧洲在线| 国产免费人成在线视频| 中国好声音第二季免费播放| 亚洲一级二级三级不卡| 4399好看日本在线电影免费| 亚洲gay片在线gv网站| 国产精品亚洲二区在线观看| 日韩精品免费视频| 亚洲人成人网站18禁| 亚洲精品综合久久| 免费国产叼嘿视频大全网站| 亚洲va精品中文字幕| 亚洲第一区精品日韩在线播放| 久久大香香蕉国产免费网站 | 亚洲国产成人99精品激情在线| 精品久久久久久久免费加勒比| 本免费AV无码专区一区| 亚洲日韩乱码中文无码蜜桃| 国产成人3p视频免费观看| 老司机精品免费视频| 亚洲jjzzjjzz在线观看| 亚洲免费日韩无码系列| 99在线视频免费观看视频| 国产精品永久免费视频| 亚洲AV无码国产精品色|