




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第7章JavaServer Faces,Lyh_,JSF簡介JSF啟動JSF標記JSF執(zhí)行進程和生命周期數(shù)據(jù)轉(zhuǎn)換和驗證事件處理,學習目標,7.1 JSF簡介,JavaServer Faces (JSF):符合JavaEE5標準的JSF、7.1 JSF簡介、JSF體系結(jié)構(gòu)JSF是嚴格遵循Java用戶界面標準和模型-視圖控制器(MVC)設(shè)計模式的框架。清楚地將用戶界面代碼(視圖)與應(yīng)用程序節(jié)目數(shù)據(jù)和邏輯(模型)分開,可以更容易地管理JSF應(yīng)用程序。與應(yīng)用程序的所有用戶交互都由前端“Faces servlet”處理。7.1 JSF簡介,JSF體系結(jié)構(gòu),7.1 JSF簡介,JSF的優(yōu)勢UI組件(UI-
2、component)事件驅(qū)動模型用戶界面業(yè)務(wù)邏輯的直接映射程序員,以及網(wǎng)頁設(shè)計人員分工請求處理生命周期的多階段分區(qū)支持全面自定義web開發(fā)的正式標準之一,支持多種IDE工具,啟動7.2 JSF,啟動import javax . faces . context . faces context;import javax . faces . event . value change event;public class myjsfaction private string type;public string gettype()returntype;public void settype(strin
3、g type)this . type=type;/定義如何更改傳入值。public void select type(value change event event)/faces context context=faces context . getcurrentinstant stringname tempIf (java.equals (nametemp)類型=Javaelse type=C;(右側(cè)代碼下),/導航頁面上的URL public string gourl()returntype定義,7.2 JSF入門,第一個JSF例程faces-config.xml設(shè)計,sunyangco
4、m . sunyang . MML選擇JSF,啟動7.2 JSF,啟動第一個查詢項目:啟動7.2 JSF,第一個JSF實例:newJava.jsp。附注:其他頁面newC.jsp類似。my JSP new Java . JSP starting page JSF測試信息!歡迎學習語言。祝你成功!啟動7.2 JSF,示例程序中涉及的一些茄子內(nèi)容:JSF表達式語言(Expression Language,Expression Language)托管Backing Bean(Bean)JSF導航,啟動7.2 JSF,JSF表達式語言(El)和之間的變量#userB EL的變量名稱也可
5、以是在節(jié)目執(zhí)行期間聲明的名稱,或者是JSF EL預定義的隱式對象。如果#或#paramname變量屬于List或Map類型,則可以在中指定索引。# some bean . some list 0 # some bean . some mapuser . name,啟動7.2 JSF,JSF表達式語言(El)示例,啟動7.2 JSF,JSF表達式語言(JSF表達式語言(使用預定義的JSF EL變量initParam訪問)可以在web.xml的: productId 2004Q4 JSP頁中使用#initParamproductId訪問。示例:產(chǎn)品id :如果有以下URL :
6、http:/your _ server/your _ app/product . JSF?Id=777,您也可以在JSF頁面中使用預定義變量訪問參數(shù)(例如,周中的:)。直接調(diào)用牙齒JSF頁并映射servlet(映射).7.2啟動JSF,JSF表達式示例:如何添加上下文路徑注:對于URL http:/localhost 33608080/JSF ch 03/faces/test . JSP,getRequestContextPath方法的返回值為/,如果在當前JSF實現(xiàn)中outputLink中定義的路徑以/啟動時未將上下文路徑添加到URL,請對URL使用# faces context . ext
7、ernal context . request context path管理Bean (Managed Beans,管理BeansBean的管理集中在配置文件內(nèi),只要修改配置文件,就可以修改Bean之間的相關(guān)性。Backing Beans:在實際業(yè)務(wù)邏輯Bean和UI組件之間架起一座橋梁,從Backing Bean調(diào)用業(yè)務(wù)邏輯Bean來處理用戶的請求,或放置業(yè)務(wù)過程結(jié)果,直到UI組件簽出值并向用戶顯示結(jié)果。7.2 JSF入門,托管bean作用域:application:會話進程request:請求步驟none:需要時臨時,sunyang com管理Bean(托管beans) bean的默認定義
8、:名稱類生存范圍可選設(shè)置屬性的createvaluebinding(# userbean);userbean bean=(userbean)binding . getvalue(context);第二種方法:faces context CTX=faces context . get current instance();variable resolver variable resolver=CTX . get application()。getvariableresolver();userbean bean=(userbean)variable resolver . resolve varia
9、ble(CTX, userbean );第三種方法:application application=context . get application();Userbean bean=(userbean)application . evaluatevalueexpressionget(context,# userbean,userbean.class),userbeanFacesContext的實例包含處理JSF請求所需的所有請求的狀態(tài)信息。,啟動7.2 JSF,在Java代碼中使用FacesContext示例:獲取Session對象及其屬性,通過ExternalContext對象訪問與當前請
10、求關(guān)聯(lián)的Session對象3360 objectsessionattribute=nullexternal context external context=faces context . getexternal context();mapsession map=external context . getsessionmap();會話映射(If)!=null)會話屬性=會話映射。get(密鑰);7.2啟動JSF,在Java代碼中使用FacesContext示例:如何終止會話?(使用session的invalidate方法)在action方法中,結(jié)束session 3360 public st
11、ring logout()faces context fc=faces context . get currentionget session(false);session . invalidate();Return login _ page,啟動7.2 JSF,在Java代碼中使用FacesContext示例:Java代碼如何訪問web.xml中的初始化參數(shù)?(使用externalContext的getInitParameter方法),web . XML:connection string JDBC 3360 Oracle 3360 thin 3360 Scott/tiger cartml
12、stringgetinitparameter(連接字符串);啟動7.2 JSF,在Java代碼中使用FacesContext示例:JSF程序如何獲取URL的傳遞參數(shù)?URL : http:/your _ server/your _ app/product . JSF?Id=777,可以訪問使用以下代碼傳遞的參數(shù): faces context fc=faces context . get current instance():stringid=(string)fc . getexternalcontext()。getrequestparametermap()。get(id);啟動7.2 JSF,在web.xml中為JSF配置其他幾個茄子參數(shù):在javax . faces . state _ saving _ method client javax . faces . default web . XML
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 海洋文化創(chuàng)意產(chǎn)品開發(fā)
- 老年護理初級課件
- 綠色環(huán)保新能源公交車駕駛員聘用合同
- 出國勞務(wù)人員意外傷害賠償擔保合同樣本
- 部分應(yīng)收賬款處置及回款合同
- 老人清潔護理課件
- 美術(shù)課件介紹視頻
- 美術(shù)消防員課件圖片
- 美術(shù)教師技能大賽課件
- 美術(shù)圖案分析課件
- 期末作文預測外研版七年級英語下冊
- 2025-2030中國功率半導體器件市場格局與投資方向報告
- 統(tǒng)編版五年級升六年級語文暑期銜接《課外閱讀》專項測試卷及答案
- 2025年 煙草陜西公司招聘考試筆試試題附答案
- 2025年老年教育課程設(shè)置:藝術(shù)修養(yǎng)與審美教學探索報告
- 譯林版一年級下冊全冊英語知識點梳理
- 2025年河北高考真題化學試題+解析(參考版)
- 護理事業(yè)十五五發(fā)展規(guī)劃(2026-2030)
- 2025至2030中國數(shù)字出版行業(yè)產(chǎn)業(yè)運行態(tài)勢及投資規(guī)劃深度研究報告
- 2025至2030中國中藥材種植行業(yè)運作模式與競爭格局分析報告
- 武漢大學2020年強基計劃物理試題(原卷版)
評論
0/150
提交評論