前言:
JavaServer Faces (JSF) 是一種用于構(gòu)建 Web 應(yīng)用程序的新標(biāo)準(zhǔn) Java 框架。它提供了一種以組件為中心來開發(fā) Java Web 用戶界面的方法,,從而簡化了開發(fā),。JavaServer Faces 還引起了廣大 Java/Web 開發(fā)人員的興趣。“企業(yè)開發(fā)人員”和 Web 設(shè)計(jì)人員將發(fā)現(xiàn) JSF 開發(fā)可以簡單到只需將用戶界面 (UI) 組件拖放到頁面上,,而“系統(tǒng)開發(fā)人員”將發(fā)現(xiàn)豐富而強(qiáng)健的 JSF API 為他們提供了無與倫比的功能和編程靈活性,。JSF 還通過將良好構(gòu)建的模型-視圖-控制器 (MVC) 設(shè)計(jì)模式集成到它的體系結(jié)構(gòu)中,確保了應(yīng)用程序具有更高的可維護(hù)性,。最后,,由于 JSF 是通過 Java Community Process (JCP) 開發(fā)的一種 Java 標(biāo)準(zhǔn),,因此開發(fā)工具供應(yīng)商完全能夠?yàn)?JavaServer Faces 提供易于使用的,、高效的可視化開發(fā)環(huán)境。 本文將通過使用MyEclipse來開發(fā)一個(gè)小的JSF Demo應(yīng)用程序,。從而能使讀者快速上手來進(jìn)行JSF開發(fā),。 一. 環(huán)境要求 • JDK 1.4+ (Sun or IBM) • http://java./j2se/downloads/index.html • Eclipse 3.1 SDK • http://www./downloads/index.php • MyEclipse 4.1 • http://www./ContentExpress-display-ceid-10.html • Tomcat 5.x (5.5.9 Preferred, or other compliant Servlet/EJB container) • http://jakarta./tomcat/index.html 二. 創(chuàng)建工程 我們需要在MyEclipse中創(chuàng)建Web Project,通過File > New > Other > Project > J2EE > Web Project來進(jìn)行創(chuàng)建,。如圖2.1 Figure 2.1: Create a new web project
Figure 2.2: Web Project Wizard Dialog 注意:開發(fā)JSF應(yīng)用程序推薦使用JSTL類庫,,因此在創(chuàng)建工程時(shí)選擇“JSTL Libraries”,也可以在后面通過MyEclipse 內(nèi)容的菜單中“Add JSTL Libraries”來添加。 工程創(chuàng)建好以后,,需要添加JSF Capabilities,,通過右鍵點(diǎn)擊工程,選擇MyEclipse > Add JSF Capabilities,,如圖2.3 Figure 2.3: Adding JSF Capabilities to a Web Project 按照默認(rèn)的設(shè)置,,點(diǎn)擊“Finish” Figure2.4: Configuring JSF Capabilities 向?qū)瓿梢院螅こ探Y(jié)構(gòu)會(huì)增加許多類庫,,如圖2.5: Figure 2.5: Project Layout After Configuration 至此,,工程已經(jīng)創(chuàng)建完了,下面我們要開始編輯和創(chuàng)建應(yīng)用程序,。 三. 創(chuàng)建Message Bundle
Message Bundle文件是一個(gè)簡單的屬性文件,,存儲(chǔ)與keys相關(guān)的消息,提供國際化支持,,也可以用在JSP頁面中,。Struts也提供了類似的文件ApplicationResources.properties。 在JSF中,,可以在頁面中加載message bundle使用如下代碼:<f:loadBundle basename="com.jsfdemo.MessageBundle" var= "bundle"/> 在創(chuàng)建message bundle文件之前,,在src文件中通過右鍵選擇“New > Package”來創(chuàng)建com.jsfdemo包。使用新鍵文件向?qū)韯?chuàng)建message bundle文件,,如圖3.1: Figure 3.1: Creating the Message Bundle file 創(chuàng)建完MessageBundle.properties文件以后,,要添加在JSP頁面顯示的每個(gè)標(biāo)簽的key/value對或者是文本字符串??梢詮?fù)制下面中的內(nèi)容到message bundle文件中,。 MessageBundle.properties user_name_label=User Name: user_password_label=Password: login_button_label=Login MessageBundle.properties文件的內(nèi)容 MessageBundle文件創(chuàng)建完以后,下一步,,我們要?jiǎng)?chuàng)建ManagedBean以處理用戶登錄,。 四. 創(chuàng)建 Managed Beans 這部分我們將創(chuàng)建Managed Beans來執(zhí)行l(wèi)ogin操作,在這個(gè)Demo中,,登錄操作就是簡單的核對用戶名和密碼是否都是myeclipse,,并將頁面轉(zhuǎn)向到userLoginSuccess.jsp。 首先用MyEclipse JSF Editor打開faces-config.xml文件 Figure 4.1: Opening faces-config.xml file for editing 點(diǎn)擊右上角的Add ManagedBean來添加新的bean,,如圖所示: Figure 4.2: Launch the ManagedBean wizard from the Outline View 點(diǎn)擊以后出現(xiàn)新的Managed Bean向?qū)?,如圖所示添加值 Figure 4.3: Setup the new ManagedBean‘s class and properties Figure 4.4: Managed Bean Wizard Final Page |
|