JSF的技術(shù)與組件是怎樣的

JSF的技術(shù)與組件是怎樣的,很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來(lái)學(xué)習(xí)下,希望你能有所收獲。

創(chuàng)新互聯(lián)主營(yíng)孝義網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,成都app軟件開(kāi)發(fā),孝義h5成都微信小程序搭建,孝義網(wǎng)站營(yíng)銷(xiāo)推廣歡迎孝義等地區(qū)企業(yè)咨詢

JSF是由Java Community Process (JCP)制定的一個(gè)Web應(yīng)用框架標(biāo)準(zhǔn)。JSF具有良好定義的請(qǐng)求處理生命周期和豐富的組件層次結(jié)構(gòu),旨在推動(dòng)基于Java的Web用戶界面開(kāi)發(fā)的簡(jiǎn)易性。利用JSF提供的可重用、可擴(kuò)展、基于組件的用戶界面框架,在快速開(kāi)發(fā)工具RAD的支持下,可以通過(guò)拖放組件的方式對(duì)Web用戶界面進(jìn)行可視化編輯,將用戶界面上的組件與一個(gè)數(shù)據(jù)源綁定,并將客戶端用戶界面產(chǎn)生的事件交給服務(wù)器端處理,從而大大降低基于Java的Web用戶界面的開(kāi)發(fā)難度,提高開(kāi)發(fā)效率。

JSF的主要優(yōu)勢(shì)之一就是它既是Java Web用戶界面標(biāo)準(zhǔn)又是嚴(yán)格遵循模型-視圖-控制器 (MVC) 設(shè)計(jì)模式的框架。用戶界面代碼(視圖)與應(yīng)用程序數(shù)據(jù)和邏輯(模型)的清晰分離使JSF應(yīng)用程序更易于管理。為了準(zhǔn)備提供頁(yè)面對(duì)應(yīng)用程序數(shù)據(jù)訪問(wèn)的JSF 上下文和防止對(duì)頁(yè)面未授權(quán)或不正確的訪問(wèn),所有與應(yīng)用程序的用戶交互均由一個(gè)前端“Faces”servlet(控制器)來(lái)處理。 JSF技術(shù)做到了應(yīng)用程序邏輯和表示的完全分離,是真正徹底的MVC模式。

JSF是構(gòu)建Web應(yīng)用程序的新標(biāo)準(zhǔn)Java框架,可以依據(jù)JSF的框架標(biāo)準(zhǔn)手工書(shū)寫(xiě)Web應(yīng)用程序,以文本方式像寫(xiě)HTML或JSP程序一樣實(shí)現(xiàn)Web用戶界面的設(shè)計(jì);同時(shí)在開(kāi)發(fā)、運(yùn)行以及調(diào)試前還需要搭建系統(tǒng)運(yùn)行平臺(tái)。

這樣做的缺點(diǎn)是不能充分體現(xiàn)可視化開(kāi)發(fā)的便捷和高效,一般是在分析Web應(yīng)用程序的結(jié)構(gòu)時(shí)使用。

(1)視圖設(shè)計(jì)

方便、快捷地開(kāi)發(fā)基于JSF的Web應(yīng)用程序,是在JSF提供了一組豐富的、可重用的服務(wù)器端用戶界面組件的條件下實(shí)現(xiàn)的。在開(kāi)發(fā)工具的支持下,用戶可以很容易地在可視化環(huán)境中利用這些組件構(gòu)建Web用戶界面,處理組件的數(shù)據(jù)校驗(yàn)、事件處理等用戶界面管理問(wèn)題。

設(shè)計(jì)每個(gè)需要的JSP頁(yè)面,在頁(yè)面中放置JSF的內(nèi)置組件,并將組件與應(yīng)用層的JavaBean綁定。利用RAD工具能通過(guò)拖放組件的方式輕松實(shí)現(xiàn)頁(yè)面文件,不需要手寫(xiě)大量代碼。開(kāi)發(fā)工具自動(dòng)生成頁(yè)面對(duì)應(yīng)的java文件,在文件中定義好了頁(yè)面的JSF組件及其getter、setter方法以及JSF組件的“action”屬性對(duì)應(yīng)的方法等。程序員可以方便地在已有程序的基礎(chǔ)上修改、調(diào)試。

(2)模型設(shè)計(jì)

JSF技術(shù)做到了應(yīng)用程序邏輯和表示的完全分離。在模型設(shè)計(jì)部分,程序員只需要考慮程序的邏輯功能,不需要考慮數(shù)據(jù)的表現(xiàn)形式。JSF模型是通過(guò)JavaBean程序來(lái)實(shí)現(xiàn)的。

JSF模型是根據(jù)頁(yè)面中組件需要處理的業(yè)務(wù)邏輯而設(shè)計(jì)實(shí)現(xiàn)的。在JSF中使用JavaBean可以直接在JSF頁(yè)面中聲明或者在配置文件faces-config. xml中聲明。

如果手工部署應(yīng)用,則編譯完成的JavaBean文件應(yīng)放到Web應(yīng)用程序的WEB- INF\classes目錄下(TOMCAT環(huán)境下);如果借助于RAD開(kāi)發(fā)工具,設(shè)計(jì)人員就不需要考慮部署的細(xì)節(jié),開(kāi)發(fā)工具會(huì)自動(dòng)把實(shí)現(xiàn)了業(yè)務(wù)邏輯的 JavaBean文件(未編譯的java文件和編譯成功后的jar包)成功地部署在相關(guān)位置。

(3)控制器設(shè)計(jì)

JSF的控制器設(shè)計(jì)是在配置文件中完成的,相關(guān)的主要有兩個(gè)文件:web.xml文件和faces- config.xml文件(均在WEB-INF目錄下)。web.xml文件主要用于控制JSF的生命周期,實(shí)現(xiàn)部署描述符。faces- config.xml文件實(shí)現(xiàn)導(dǎo)航,在文件中控制頁(yè)面之間的跳轉(zhuǎn)流程。

配置步驟是首先配置Web應(yīng)用程序的web.xml文件,然后是配置JSF的控制文件faces-config.xml文件。這兩個(gè)文件格式固定,在IDE環(huán)境中這個(gè)過(guò)程由工具自動(dòng)完成,不需要設(shè)計(jì)人員的干預(yù),即使手工配置也比較簡(jiǎn)單。

JSF技術(shù)重點(diǎn)在View部分,它實(shí)現(xiàn)了Web應(yīng)用程序設(shè)計(jì)角色的完全分離。JSF網(wǎng)頁(yè)設(shè)計(jì)者只需要專(zhuān)注于頁(yè)面的設(shè)計(jì);應(yīng)用程序開(kāi)發(fā)者主要關(guān)心Model部分的JavaBean的開(kāi)發(fā);程序的流程控制則由faces-config.xml專(zhuān)門(mén)配置。

總結(jié)

JSF是基于Java 的Web 應(yīng)用開(kāi)發(fā)領(lǐng)域里提供了一個(gè)可重用、可擴(kuò)展、基于組件、工具友好的服務(wù)器端UI 框架。在支持JSF 的RAD開(kāi)發(fā)工具中,人們可以像使用Visual Studio. NET一樣方便快捷地構(gòu)建Web 用戶界面,大大降低了利用Java技術(shù)實(shí)現(xiàn)Web 用戶界面的難度,提高了開(kāi)發(fā)效率。

JSF具有強(qiáng)大的組件體系和事件處理系統(tǒng),完全實(shí)現(xiàn)了MVC模式的應(yīng)用架構(gòu),使得基于Java的Web用戶界面程序開(kāi)發(fā)難度大大降低,提高了開(kāi)發(fā)效率,非常適用于Web頁(yè)面的開(kāi)發(fā)。

JSF是一個(gè)開(kāi)放的標(biāo)準(zhǔn),具有很好的可擴(kuò)展性。依照J(rèn)SF 的規(guī)范,用戶完全可以根據(jù)需求定制自己的用戶界面組件、事件處理器、數(shù)據(jù)校驗(yàn)和轉(zhuǎn)換組件等,這些組件和標(biāo)準(zhǔn)的JSF組件一樣是可重用的。JSF API 是直接架構(gòu)在Servlet API 之上的,因此JSF 用戶界面組件的呈現(xiàn)并不局限于特定的腳本技術(shù)或標(biāo)記語(yǔ)言。表示層完全可以采用JSP 之外的技術(shù)。

在眾多的J2EE表現(xiàn)層框架技術(shù)中,JSF表現(xiàn)出其旺盛的生命力。盡管JSF技術(shù)還有不少問(wèn)題,但隨著JSF技術(shù)的不斷成熟和版本更新,其必將獲得越來(lái)越多的應(yīng)用。

JSF框架搭建(MyEclipse)(實(shí)現(xiàn)用戶登錄)

1.新建一個(gè)web project,選擇Java EE 5.0選項(xiàng),輸入項(xiàng)目名稱:JSFLoginDemo(例),點(diǎn)擊完成。

2.菜單中選擇MyEclipse,Project Capabilities--->Add JSF Capabilities,點(diǎn)擊完成。

3.src下新建一個(gè)資源文件,命名Messages.properties(用處:做顯示的國(guó)際化),寫(xiě)入
login_label=Please Login:
login_label=User name:

4.src下建個(gè)包,包名為com.jsfdemo

5.添加受管Bean(New Managed Bean),命名UserBean,Class:com.jsfdemo.UserBean,Scope:session,添加 userName,Property Kind:Simple,Class:java.lang.String,完成。再添加password,Property Kind:Simple,Class:java.lang.String,完成。下面兩項(xiàng)打鉤----->Next---->finish, 檢查配置信息。

看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對(duì)創(chuàng)新互聯(lián)的支持。

標(biāo)題名稱:JSF的技術(shù)與組件是怎樣的
網(wǎng)頁(yè)路徑:http://www.muchs.cn/article8/jpcsop.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、品牌網(wǎng)站制作、響應(yīng)式網(wǎng)站、企業(yè)網(wǎng)站制作、電子商務(wù)、網(wǎng)頁(yè)設(shè)計(jì)公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名