成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Facelets專為JSF設計的視圖技術

開發 后端
本文介紹Facelets專為JSF設計的視圖技術,以及Facelets 概述,Facelets 模板框架等。

由于最近在 Java™ 服務器外觀(JSF)項目上工作,我很有幸***次使用了 Facelets。關于 Facelets,我最喜歡的是它讓我可以創建可重用的復合組件。能夠拿出一個頁面(例如 JSP)并把它變成組件,對于我的 JSF 開發來說真是莫大的好處。我的結論是什么?如果不用 Facelets,那么就無法得到能從 JSF 獲得的***收獲。

JSF 和 Java 服務器頁面技術之間的不匹配,是 JSF 開發中的一個嚴重問題。問題是如何把 JSP 的動態內容集成到 JSF 基于組件的模型中。JSP 非常重視生成動態內容輸出,而 JSF 需要 JSP 來協調組件模型的構建。因為這個任務超出了 JSP 原來的目的,所以產生了距離。

大多數 JSF 開發人員只是學會了一事一議地解決這類問題,但是這就像在錘子上放一個枕頭,最終還會掉下來打傷腦袋。Facelets 是更加全面的解決方案:專為 JSF 組件模型度身定制的模板化語言。

Facelets 有以下吸引人的特性:
◆模板化(像 Tiles)
◆復合組件
◆定制的邏輯標記
◆表達式語言
◆對設計師友好的頁面開發
◆創建組件庫

這些特性比我想像的要更相關和統一。在這篇文章中,我討論前兩個:模板化和復合組件。我使用的 Web 應用程序基于為我的針對懷疑者的 JSF 系列開發的一個應用程序,我把它更新成使用 Facelets 視圖而不是 Tiles。在進一步閱讀之前,應當 下載示例代碼。如果要隨著討論一起操作,還需要 安裝 Facelets。

Facelets 概述

對于 Facelets 可能會做的***一個錯誤假設,就是它只是 Tiles 的替代品。Facelets 遠不止如此:它是思考 JSF 的新方式。
 
JSP 是種生成 servlet 的模板化語言。JSP 的主體與 servlet 的 doGet() 和 doPost() 方法等價(也就是說,成為 jspService() 方法)。JSF 定制標記(例如 f:view 和 h:form)只是調用 JSF 組件來呈現它們自己的當前狀態。JSF 組件模型的生命周期獨立于 JSP 生成的 servlet 的生命周期。這種獨立性就是混淆的來源。

與 JSP 不同,Facelets 這個模板化語言,從構建之初,就考慮了 JSF 的組件生命周期。使用 Facelets,生成的模板會構建組件樹,而不是 servlet。這就允許更好的重用,因為可以把組件組合成另一個組件。

Facelets 減少了編寫定制標記才能使用 JSF 的需求。Facelets 本身就可以使用 JSF 定制組件。溝通 JSF 和 Facelets 只需要很少的特殊編碼:要做的全部工作就是在 Facelet 標記庫文件中聲明 JSF 組件。在 Facelets 模板化語言中可以直接使用 JSF 組件,不用任何額外的開發。

Facelets 模板框架

在提供針對組件構建設計的模板框架方面,Facelets 與 Tapestry (請參閱 參考資料)類似。但是,對于具有 JSP 背景的我們來說,Facelets 看起來比 Tapestry 友好得多。它允許使用熟悉的 JSTL 樣式的標記和 JSTL/JSF/JSP 樣式的表達式語言。大大降低的學習曲線意味著可以更加迅速地開始開發。

Facelets 允許定義能夠直接包含進頁面或者容易地添加到 Facelet 標記庫的組件集。實際上讓人高興的是在 Facelets 中定義定制標記(復合組件和類似 JSP 定制標記的標記)的迅速。使用這些組件集,Facelets 還允許定義站點模板(和更小的模板)。這與使用 Tiles 很相似,但是少了定義文件。也可以在定制 JSF 組件內部使用 Facelets,因為 Facelets API 提供了可以容易地與 JSF 組件集成的接口。

從 Tiles 到 Facelets

如前所述,在這里使用的示例 Web 應用程序基于為我的 針對懷疑者的 JSF 系列創建的示例。它為一家在線 CD 店管理庫存,創建、讀取、更新和刪除(CRUD)清單。它包含一個表單,讓用戶向系統輸入新 CD,有一個單選按鈕列表,允許用戶選擇音樂分類。當用戶選擇了一個分類時,就觸發某些 JavaScript 立即把表單提交回服務器。應用程序還包含一個 CD 清單,用戶可以根據標題或藝術家對清單中的 CD 排序。


示例應用程序類 

在線 CD 商店示例的類圖

 

【編輯推薦】

  1. JSF基礎框架
  2. 使用G4JSF集成GWT和JSF
  3. 過渡技術的Ajax及Apusic JSF
  4. NetBeans中JSF的可視化開發
  5. 詳細介紹Seam Remoting API和Ajax4jsf
責任編輯:佚名 來源: JavaEye
相關推薦

2009-06-24 13:06:41

JSF組件Facelets

2009-06-22 13:41:58

FaceletsJSF組件

2009-06-24 16:42:17

JSF和Facelet

2009-06-25 11:21:36

JSF流行名詞

2009-06-29 13:22:19

JSF技術JSF組件

2010-01-18 09:37:39

JSF 2.0Java EE 6

2009-06-26 10:54:24

JSF技術

2009-06-29 14:30:27

JSF技術

2009-07-07 17:18:57

Facelets介紹JSP與Facelet

2009-06-24 15:44:59

JSF的加減法Seam

2009-06-26 13:20:50

JSF和Ajax

2015-09-01 15:45:50

開源字體Hack

2009-06-22 16:24:33

JSF框架中使用的設計

2009-06-01 09:30:51

JSF2.0FaceletsAjax4JSF

2009-06-24 17:21:23

JSF框架設計模式

2009-06-25 11:11:25

控制JSF切入點

2009-09-23 17:56:45

JSF入門

2016-01-25 09:32:37

容器網絡SDN

2009-06-22 17:59:24

JSF基于Java的Web

2016-12-22 13:32:04

服務化框架JSF解密
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美日韩淫片 | 日韩中文字幕视频在线观看 | 韩日有码| 91久久北条麻妃一区二区三区 | 中国一级特黄真人毛片 | 亚洲欧美视频一区 | 超黄毛片 | 国产一区二区三区在线看 | 热99精品视频 | 一区二区三区四区av | 在线播放中文字幕 | 国产日韩欧美 | 99视频在线播放 | a在线免费观看 | 亚洲午夜在线 | 日韩av一区二区在线观看 | 久久精品成人热国产成 | 一级片在线视频 | 国产在线视频一区 | 日本精品视频一区二区 | 国产日产久久高清欧美一区 | 欧美一级高潮片免费的 | 色综合99 | 国产成人精品在线 | 伦理二区 | 国产三级 | 亚洲精品视频在线看 | 成人av电影在线 | 天天操欧美 | 五月激情综合 | 欧美精品一二三区 | 欧美日韩综合一区 | 九九久久精品 | 婷婷开心激情综合五月天 | 免费黄色a视频 | 色偷偷噜噜噜亚洲男人 | 久久久精品久久 | 欧美午夜在线 | 欧美一区二区免费视频 | 狠狠操天天操 | 亚洲国产精品视频一区 |