隨筆-9  評論-168  文章-266  trackbacks-0

            JSF使用 JavaBean 完成 "業務邏輯" and  "視圖"  的分離的目的, 在JSF中的Bean其角色是屬于Backing Bean,又稱之為Glue Bean,其作用是在真正的 "業務邏輯Bean" 與 "UI元件" 之間搭起橋梁.
                  在Backing Bean中會調用 ---> "業務邏輯Bean"  處理使用者的請求,
                  或者是將業務邏輯處理結果放置 ---> "Backing Bean" 中,等待UI元件取出當中的值並顯示結果給使用者。

            JSF將Bean的管理集中在faces-config.xml中,一個例子如下:
          ....
          <managed-bean>
              <managed-bean-name>user</managed-bean-name>
                  <managed-bean-class>
                      onlyfun.caterpillar.UserBean
                  </managed-bean-class>
              <managed-bean-scope>session</managed-bean-scope>
          </managed-bean>
          ....

            這個例子我們在 第一個JSF程式 看過,<managed-bean-class>設定所要使用的Bean類別,<managed-bean-name>設定之名稱,可供我們在JSF頁面上使用Expression Language來取得或設定Bean的屬性,例如:

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

            <managed-bean-scope>設定Bean的存活範圍,您可以設定為request、session 與application,設定為request時,Bean的存活時間為請求階最,設定為session則在使用者應用程式交互開始,直到關閉瀏覽器或顯式的結束會話為止(例如登出程式),設定為application的話,則Bean會一直存活,直到應用程式關閉為止。

            您還可以將存活範圍設定為none,當設定為none時會在需要的時候生成一個新的Bean,例如您在一個method中想要生成一個臨時的Bean,就可以將之設定為none。

            在JSF頁面上要取得Bean的屬性,是使用 JSF表示語言 (Expression Language),要注意到的是,JSF表示語言是寫成 #{expression},而 JSP表示語言 是寫成 ${expression},因為表示層可能是使用JSP,所以必須特別區分,另外要注意的是,JSF的標籤上之屬性設定時,只接受JSF表示語言。

          posted on 2008-04-15 11:41 紫蝶∏飛揚↗ 閱讀(527) 評論(0)  編輯  收藏 所屬分類: JSF
          主站蜘蛛池模板: 界首市| 桐梓县| 临沧市| 南充市| 栖霞市| 宜都市| 怀安县| 旌德县| 城口县| 衡阳市| 清徐县| 武川县| 望都县| 乌鲁木齐县| 宜宾市| 丹棱县| 齐齐哈尔市| 龙游县| 唐海县| 小金县| 安化县| 海安县| 芜湖县| 拉萨市| 大悟县| 南涧| 古田县| 司法| 新丰县| 若羌县| 滨海县| 公安县| 蓝山县| 曲靖市| 平山县| 博野县| 视频| 鄂托克前旗| 丰都县| 汕头市| 潍坊市|