日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
JavaServer Faces(JSF)簡介

JavaServer Faces是Sun公司推出的一種Web用戶界面框架,隨J2EE的新版本Java EE 5一起發(fā)布。JSF的目標(biāo)是簡化Web開發(fā),為此,Sun在JSF中提出了許多技術(shù)措施,其中包括UI組件、事件驅(qū)動(dòng)和Managed Bean等等。本專題將以系列的形式,介紹JSF簡化Web開發(fā)技術(shù)中具有代表性的幾項(xiàng)技術(shù),試圖使讀者對JSF技術(shù)有一個(gè)概括的了解,從而理解JSF是如何簡化Web開發(fā)的。本文是系列的第一篇,從總體上介紹了JSF的技術(shù)特點(diǎn)。

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、深澤網(wǎng)絡(luò)推廣、重慶小程序開發(fā)、深澤網(wǎng)絡(luò)營銷、深澤企業(yè)策劃、深澤品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供深澤建站搭建服務(wù),24小時(shí)服務(wù)熱線:18982081108,官方網(wǎng)址:www.cdcxhl.com

1. JavaServer Faces簡介

JavaServer Faces是Sun公司的一項(xiàng)技術(shù),簡稱JSF。按照Sun公司的定義,JSF是Java Web應(yīng)用的用戶界面框架,其設(shè)計(jì)目標(biāo)是簡化Web應(yīng)用的開發(fā)和維護(hù)。JSF對Web應(yīng)用開發(fā)的簡化,可以概括為四個(gè)方面:

第一,JSF提供了一組用戶界面組件,這些組件是可重用的,程序員可以利用這些組件方便的構(gòu)建Web應(yīng)用的用戶界面;

第二,利用JSF,在用戶界面組件和業(yè)務(wù)邏輯之間傳遞數(shù)據(jù)將變得非常簡單;

第三,JSF可以維持用戶組件的狀態(tài),并且可以將狀態(tài)從一個(gè)請求傳遞到另一個(gè)請求;

第四,JSF允許程序員非常容易地開發(fā)自定義的用戶界面組件,而且這些自定義用戶界面組件同樣可以重用。

JSF技術(shù)的另一個(gè)重要特征是,JSF是面向工具的。JSF建立了開放的標(biāo)準(zhǔn),工具廠商依據(jù)這個(gè)標(biāo)準(zhǔn),可以為Web應(yīng)用開發(fā)過程中的各個(gè)角色,提供強(qiáng)大的工具支持。例如,可視化的頁面編輯器,可以給頁面設(shè)計(jì)師提供“所見即所得”的功能,構(gòu)建一個(gè)網(wǎng)頁,只需簡單地從面板中拖放一個(gè)個(gè)用戶界面組件到網(wǎng)頁上;又比如,JSF的頁面導(dǎo)航也可以利用工具來操作,在A頁面與B頁面之間畫一條連線,指定一個(gè)邏輯出口,就定義了從A頁面到B頁面的一個(gè)有條件的過渡。

如果你不愿意使用工具,或者某些工具暫時(shí)還沒有,你也可以利用JSF來方便的構(gòu)建Web應(yīng)用。JSF向程序員開放了框架和編程模型的API,某些高級用戶,例如核心程序員,可以利用這些API編寫代碼,以滿足應(yīng)用的某些特殊要求。比如說,在JSF中,用戶界面組件和后臺Bean是通過表達(dá)式語言來溝通的,JSF定義了表達(dá)式語言的標(biāo)準(zhǔn)語法,如果覺得這些語法不能滿足應(yīng)用要求,那么,程序員可以編寫自己的表達(dá)式語言解釋器,然后通過API用自定義的解釋器替換默認(rèn)的解釋器。

JSF的專家組在開發(fā)JSF規(guī)范時(shí),對Web應(yīng)用進(jìn)行了高度的抽象和歸納,這使得JSF的技術(shù)高度要遠(yuǎn)遠(yuǎn)高于眼下流行的其他Web框架。在規(guī)范級別,JSF的核心架構(gòu)既獨(dú)立于具體的傳輸協(xié)議,也與具體的標(biāo)識語言無關(guān)。協(xié)議和語言的無關(guān)性,為JSF技術(shù)在其他領(lǐng)域的應(yīng)用打下了堅(jiān)實(shí)的基礎(chǔ)。

當(dāng)然,JSF最直接的服務(wù)對象,還是基于HTTP協(xié)議和HTML客戶端的Java Web應(yīng)用。Java Web應(yīng)用運(yùn)行在支持Servlet或JSP技術(shù)的Java應(yīng)用服務(wù)器上,這些應(yīng)用通常是基于表單的,由若干個(gè)頁面組成,用戶通過頁面和表單訪問Web應(yīng)用所提供的功能。以現(xiàn)存的Java Web技術(shù)編寫這樣的應(yīng)用,不是一件容易的事,程序員面臨著許多難題,例如,如何跨請求管理用戶組件的狀態(tài),如何封裝不同瀏覽器的差異,如何處理表單,如何為客戶端事件編寫服務(wù)器端處理例程,如何驗(yàn)證請求數(shù)據(jù)的有效性,如何在請求字符串和后臺對象之間轉(zhuǎn)換數(shù)據(jù)類型,如何處理異常并給出適當(dāng)?shù)奶崾疽约叭绾卧陧撁嬷g導(dǎo)航等等。而JSF的目標(biāo),就是要解決這些難題。
 
2. 具有代表性的JSF簡化Web開發(fā)技術(shù)

站在技術(shù)的角度,JSF是相當(dāng)復(fù)雜的一個(gè)框架,因此,JSF技術(shù)的完整介紹,是一項(xiàng)“大工程”,其內(nèi)容包括請求處理生命周期、用戶界面組件模型、標(biāo)準(zhǔn)的用戶界面組件、統(tǒng)一的表達(dá)式語言、托管bean機(jī)制、請求的上下文狀態(tài)信息、頁面導(dǎo)航方法、呈現(xiàn)模式、與JSP的集成以及生命周期管理等等。限于篇幅和時(shí)間,本文只是擇其要點(diǎn)加以羅列,不能涉及JSF的所有細(xì)節(jié),不過,即便是這樣走馬觀花,也足以展示JSF技術(shù)在某些方面的領(lǐng)先性了。

要說明一項(xiàng)技術(shù)的領(lǐng)先性,最好的辦法莫過于與其競爭對手進(jìn)行對比。在Java Web編程中,JSF的最大對手無疑是JSP和Struts。前者是初級程序員的不二選擇,而后者則是Java Web事實(shí)上的框架標(biāo)準(zhǔn)。不可否認(rèn),JSP和Struts都是優(yōu)秀技術(shù),不過,站在抽象思維的角度去考察這兩種技術(shù),就會發(fā)現(xiàn),JSP和Struts的抽象層次都要低于JSF。

在Web應(yīng)用的架構(gòu)中,顯然,Web Server位于抽象級別的最底層,直接處理Http請求和響應(yīng);Servlet在Web Server之上,具有會話管理、生命周期管理、基本的錯(cuò)誤處理等功能;在Servlet之上的,就是JSP了,得益于它的可擴(kuò)展的模板機(jī)制,JSP在抽象層次上比Servlet更上了一層樓;再往上,我們來到了Sturts,作為一個(gè)框架標(biāo)準(zhǔn),Struts提供了非常豐富的服務(wù),例如類型轉(zhuǎn)換、導(dǎo)航、表單處理以及布局管理等;Struts是Model 2的,但同時(shí)也帶著Model 1的某些特征,而抽象層次更高的JSF,則完全是Model 2的了,與Struts相比,JSF包含Struts的所有Model 2特性,更引入了Struts所不具備的用戶界面組件、事件模式以及前臺界面和后臺業(yè)務(wù)邏輯的集成等。因此,JSF是比Struts抽象度更高的技術(shù)。

上面只是從總體上比較了JSF和JSP以及Struts技術(shù),為了使這種比較更具體,同時(shí)讓讀者對JSF技術(shù)有一個(gè)大致的了解,本系列的后續(xù)文章中,我們將選擇一些具有代表性的JSF技術(shù)點(diǎn),來展開討論,這些技術(shù)點(diǎn)包括:
◆JSF的用戶界面組件模型
◆JSF的managed bean機(jī)制
◆JSF的事件驅(qū)動(dòng)模式
◆JSF的導(dǎo)航方法
◆JSF的統(tǒng)一表達(dá)式語言
◆JSF的類型轉(zhuǎn)換器
◆JSF的數(shù)據(jù)驗(yàn)證
◆JSF的數(shù)據(jù)表組件
◆JSF的選擇組件
◆JSF的國際化特征

需要說明的是,這些不是JSF的全部技術(shù)點(diǎn),之所以選擇這些技術(shù)點(diǎn)進(jìn)行介紹,是因?yàn)檫@些技術(shù)與JSF“簡化Web開發(fā)”的目標(biāo)有著最直接的聯(lián)系?;贘SF的這些技術(shù),在工具的支持下,程序員編寫Web應(yīng)用,將會是一個(gè)令人輕松愉快的工作。

【編輯推薦】

  1. JSF與Spring的集成
  2. 學(xué)習(xí)JSF的生命周期
  3. 在JBOSS服務(wù)器上使用Myfaces的JSF實(shí)現(xiàn)
  4. 選擇JSF的理由:從UI組件開始
  5. JSF中f:loadBundle標(biāo)簽的使用方法

分享文章:JavaServer Faces(JSF)簡介
文章網(wǎng)址:http://www.dlmjj.cn/article/djoejgi.html