偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

JSF的八大優(yōu)勢

開發(fā) 后端
本文介紹JSF的八大優(yōu)勢,包括UI組件,事件驅動模式和用戶界面到業(yè)務邏輯的直接映射等。

JSF優(yōu)勢之一:UI組件(UI-component)

UI組件(UI-component)一直是桌面程序的專利,web程序中,雖然HTML定義了基本的UI標簽,但要使這些UI標簽像UI組件那樣工作,還需要很多代碼片斷來處理數(shù)據(jù)及其表現(xiàn)形式,而且有效地組織這些代碼片斷使其協(xié)調一致也是一件繁瑣的工作。JSF的UI組件是真正意義上的UI 組件,能極大地簡化程序員的工作,例如,在頁面上放置一個文本輸入框,這個輸入框立即具備了數(shù)據(jù)填充、界面更新、事件偵聽、動作觸發(fā)、有效性檢查和類型轉換的功能。更為重要的是,程序員只需根據(jù)業(yè)務邏輯編寫核心業(yè)務代碼,JSF會保證代碼在合適的時候被執(zhí)行,完全不用考慮代碼與代碼之間該如何來配合。

JSF優(yōu)勢之二:事件驅動模式

事件是面向對象方法的重要組成部分,對象之間通過事件進行溝通和交流,使得一個或多個對象能夠對另一個對象的行為作出響應,共同合作去完成一項業(yè)務邏輯。通常,編寫Web程序時,程序員要為對象之間的溝通設計機制,編寫代碼。雖然溝通的內容屬于業(yè)務邏輯,但溝通的機制顯然與業(yè)務沒有太大關系,程序員因此為業(yè)務邏輯之外的功能浪費了時間。JSF改變了這種狀況。 JSF的事件和偵聽模式與大家熟悉的Javabean的事件模式類似,有Java基礎的程序員并不需要學習任何新的東西。JSF的UI組件可以產生事件,例如,當頁面上一個文本輸入框的內容被修改時,會發(fā)出一個“值改變事件”。另一個對象如果對“值改變事件”感興趣,只需注冊為該對象的偵聽者,并編寫處理例程,即可命令JSF在事件發(fā)生時自動調用處理例程。JSF做了所有該做的事,留給程序員的只有業(yè)務邏輯代碼的編寫。

JSF優(yōu)勢之三:用戶界面到業(yè)務邏輯的直接映射

舉個例子,表單提交是Web編程最常見的任務,也是最復雜的任務之一。當用戶在網(wǎng)頁上點擊“確定”按鈕時,瀏覽器將生成一個HTTP請求,發(fā)往服務器端的某個Servlet,執(zhí)行該Servlet的service方法。在service方法中,HTTP請求需要經歷解碼、類型轉換、有效性驗證、狀態(tài)保存、數(shù)據(jù)更新等環(huán)節(jié),處理這些環(huán)節(jié)的所有細節(jié),對程序員來說是沉重的負擔。在JSF下,這些工作的很大一部分都由框架承擔了,在程序員看來,這個過程是透明的,用戶界面端的HTTP請求可以直接映射到后端的一個事件處理例程,JSF起到了承前啟后的作用。

JSF優(yōu)勢之四:程序員和網(wǎng)頁設計人員的分工

在JSP中,程序員和網(wǎng)頁設計人員的工作有時候是互相交織、無法區(qū)分的。這是因為JSP頁面中摻入了網(wǎng)頁設計人員所不熟悉的一些JSP標簽,甚至是晦澀的Java代碼。要求網(wǎng)頁設計人員理解這些標簽和代碼是不現(xiàn)實的,不符合分工合作的原則。在JSF中,框架為網(wǎng)頁設計人員提供了一套標準的UI組件,在工具的支持下,可以通過拖放簡單地添加到網(wǎng)頁上,然后設置某些顯示屬性來滿足視覺要求。網(wǎng)頁設計人員不需要知道UI組件背后的復雜代碼,那是程序員的事,而程序員也不需要再處理任何與視覺相關的細節(jié),程序員所做的只是給UI組件綁定類的屬性或方法。雖然程序員和網(wǎng)頁設計人員需要修改同一份文件,但他們各司其職,各得其所,互不干擾。程序員和網(wǎng)頁設計人員工作的明確劃分,是JSF在易用性方面邁出的一大步。

JSF優(yōu)勢之五:請求處理生命周期的多階段劃分

雖然都是建立在Servlet基礎之上,但JSF的生命周期要比JSP復雜得多。JSP的生命周期非常簡單,頁面被執(zhí)行時,HTML標記立即被生成了,生命周期隨即結束。而一個完整的JSF請求-處理生命周期被精心規(guī)劃為6個階段,典型的JSF請求需要經歷所有階段,某些特殊的請求也可以跳過一些階段。階段的細分,顯然引入了更多的處理,但JSF框架會管理這一切,所以,程序員在獲得更多控制能力的同時,工作量并沒有增加。

JSF優(yōu)勢之六:伴隨工具而生存

JSF帶來了Web編程的巨大變革,變革的強烈程度超出了很多工具廠商的預料,以至于現(xiàn)在可供JSF使用的工具非常缺乏。缺乏工具支持的JSF 只會令人敬而遠之,因此,JSF在設計之初就為工具廠商預留了用武之地。在為數(shù)不多的JSF工具中,sun的Java Studio Creator是一個優(yōu)秀的開發(fā)環(huán)境;Borland的Jbuilder在JSF1.1時曾經是非常好用的開發(fā)工具,可惜現(xiàn)在對JSF1.2的支持沒有跟上;Eclipse下JSF的插件很多,但真正支持所見即所得的JSF插件都是收費的,例如Bea的Workshop for JSF、Exadel的JSF Studio等等;此外,Oracle和IBM也有JSF的開發(fā)工具。隨著工具的不斷涌現(xiàn),用JSF開發(fā)Web程序將會越來越方便和快速。

JSF優(yōu)勢之七:全面的用戶自定義支持

前面提到,JSF將極大地簡化Web程序的開發(fā),作為一個相對復雜的框架,JSF是如何做到這點的呢?原來JSF為程序員提供了很多默認的組件和類,通常情況下,JSF的這些默認組件和類足以滿足Web開發(fā)的需要了。但是,考慮到在某些應用場合,框架的默認行為也許不符合業(yè)務的要求,JSF特別允許程序員編寫自己的組件和類,來滿足客戶的特殊需求。例如,程序員可以編寫自己的UI組件,甚至可以創(chuàng)建自己的EL解釋器,來支持非標準的EL表達語言。

JSF優(yōu)勢之八:Web開發(fā)的官方標準之一

JSF的1.0版本發(fā)布于2004年2月份,當時是作為一項獨立的Web技術推出的。經過1.1版到現(xiàn)在最新的1.2版,短短的兩年多時間,JSF終于在2006年年中成為Java EE 5的組成部分,上升為Web開發(fā)的官方標準之一。Java EE 5最重要的使命就是簡化Java的開發(fā),而JSF無疑為這一使命立下了汗馬功勞。在Web框架層出不窮甚至有些泛濫成災的今天,Sun以JSF來樹立標準,對Java的發(fā)展是有益的。Sun在Java領域的領袖地位不容動搖,對于Java程序員來說,始終追隨業(yè)界領袖的步伐,也許是避免技術落伍的最好方法。

【編輯推薦】

  1. JSF與Spring的集成
  2. 學習JSF的生命周期
  3. 在JBOSS服務器上使用Myfaces的JSF實現(xiàn)
  4. 選擇JSF的理由:從UI組件開始
  5. JSF中f:loadBundle標簽的使用方法
責任編輯:佚名 來源: CSDN
相關推薦

2011-04-14 18:03:49

2022-11-25 14:42:03

SaaS云計算

2009-03-19 19:43:36

Windows SerR2微軟

2023-10-17 15:29:44

2023-11-15 15:45:22

2014-01-17 14:15:13

2009-02-03 09:41:50

UI組件事件驅動JSF

2011-04-29 09:15:16

Servlet

2024-04-24 09:52:19

云技能云遷移云計算

2022-01-05 09:26:56

IT災難IT故障

2012-05-11 11:53:36

虛擬化

2011-07-11 14:01:12

JAVA

2020-06-28 14:01:50

漏洞管理漏洞攻擊

2025-01-02 12:51:06

2023-12-27 11:45:09

2012-05-10 16:45:54

linux系統(tǒng)

2010-08-27 17:48:38

CSS

2010-12-09 10:20:59

2022-06-09 08:23:33

預測分析工具人工智能

2010-08-05 13:33:06

Flex布局規(guī)則
點贊
收藏

51CTO技術棧公眾號