JSF入門:整合JSF+Spring+Hibernate
本文講述的內(nèi)容是JSF。首先給不熟悉的讀者們進(jìn)行一下簡(jiǎn)單的JSF入門介紹:JSF是java web 的標(biāo)準(zhǔn),可能會(huì)取代jsp 時(shí)代。JSF直譯過(guò)來(lái)就是Java Web應(yīng)用的用戶界面框架。
JSF提供一套API以及標(biāo)簽庫(kù),用來(lái)創(chuàng)建頁(yè)面表單以及復(fù)雜的界面元素
JSF使得編寫表單提交的代碼更加簡(jiǎn)單,這些代碼可以響應(yīng)那些不同的按鈕提交,改變某些值或某些用戶的選擇等等
◆Managed beans:使得JSF簡(jiǎn)化了處理請(qǐng)求參數(shù)的方法
◆EL(Expression Language):JSF有一套表達(dá)式語(yǔ)言用來(lái)訪問(wèn)java bean的屬性以及集合元素等。
◆提供表單域類型轉(zhuǎn)換以及驗(yàn)證
◆特有屬性
◆UI組件模型
JSF提供一套豐富靈活的組件模型,包括:
◆一套UIComponent類,定義UI組件的狀態(tài)和行為。
◆呈現(xiàn)模型:定義如何用不同的方式來(lái)呈現(xiàn)組件
◆事件和監(jiān)聽(tīng)器模型用來(lái)處理組件的事件。
◆轉(zhuǎn)換模型:進(jìn)行數(shù)據(jù)轉(zhuǎn)換
◆驗(yàn)證模型:如何驗(yàn)證數(shù)據(jù)的合法性
JSF入門:數(shù)據(jù)轉(zhuǎn)換模型
當(dāng)一個(gè)組件綁定到一個(gè)對(duì)象上之后,對(duì)于組件數(shù)據(jù)來(lái)說(shuō),總共有兩個(gè)視圖:
一個(gè)是模型視圖:從這個(gè)角度去看,數(shù)據(jù)表現(xiàn)為java對(duì)象的類型,如int ,long,Date等等
一個(gè)是呈現(xiàn)視圖:從這個(gè)角度去看,數(shù)據(jù)表現(xiàn)為一種可以被人讀取或修改的形式。比如一個(gè)Date類型,可能被展現(xiàn)為一個(gè)yyyy-MM-dd格式的字符串,或者是三個(gè)字符串,分別代表年、月、日。
可以定義自己的轉(zhuǎn)換器來(lái)轉(zhuǎn)換數(shù)據(jù)。
JSF入門:事件與監(jiān)聽(tīng)器模型
事件:值改變事件、動(dòng)作事件、數(shù)據(jù)模型事件。
值改變:比如輸入框的值被更改、選中了checkbox等
動(dòng)作事件:點(diǎn)擊按鈕或超鏈接
數(shù)據(jù)模型事件:UIData組件的一行被選中的時(shí)候觸發(fā)這個(gè)事件。
JSF入門:導(dǎo)航模型
Navigation-rule,可以包含一個(gè)from-view-id和多個(gè)navigation-case
每個(gè)navigation-case中,主要包括轉(zhuǎn)向的頁(yè)面。
From-view-id : 當(dāng)前頁(yè)面
From-action:從哪個(gè)action方法
From-outcome:從哪個(gè)邏輯名稱
To-view-id:轉(zhuǎn)向哪個(gè)頁(yè)面
導(dǎo)航解決的問(wèn)題是:從哪里到哪里。一句話來(lái)說(shuō)就是:從from-view-id頁(yè)面,當(dāng)from-action方法被調(diào)用而且其返回值是from-outcome的時(shí)候,轉(zhuǎn)向to-view-id頁(yè)面。
【編輯推薦】