最近的一個大項(xiàng)目過去了,需求的變更真是殺人不償命啊,大家都辛苦了
N
個加班,終于交了客戶。前段時間做的
JSF
研究,終于有時間總結(jié)一下了。
JSF
作為一個標(biāo)準(zhǔn),里面的設(shè)計處處都感覺到
SUN
的習(xí)慣與痕跡,對于一直從事開發(fā)
JSF
或者
Struts
的開發(fā)人員來說,
JSF
算是看起來會比較順眼的(我用
Tapestry
,當(dāng)然看
JSF
也很順眼)。沒做這個
JSF
研究之前,一直都是聽到
JSF
的優(yōu)點(diǎn):
POJO
,組件化,兼容
JSP
,性能也不錯,還有國際化支持,頁面導(dǎo)航等的特點(diǎn),重點(diǎn)它是一個標(biāo)準(zhǔn),頭頭們比較放心。
首先解答一個初學(xué)者的困惑,大家聽得比較多的是,
JSF1.1
,
JSF1.2
,
myfaces,oracle ADF,ajax4jsf
,
facelets,
它們究竟是什么,有什么關(guān)系呢?
JSF1.1
、
1.2
都是
JSF
的標(biāo)準(zhǔn),定義例如接口、規(guī)范(
JSF
是面向接口編程的),必須通過實(shí)現(xiàn)才能被我們所使用,而實(shí)現(xiàn)包括有
JSF RI(Reference Implementation)
,還有
myfaces core
myfaces
,它是一個大的項(xiàng)目,下面有幾個子項(xiàng)目,分別是
myfaces core, sandbox ,tabago,tomahawk
,(奇怪的名字,好難說,我簡稱它為
TOM
),還有一個新的
ADF Faces
(跟
oracle adf
有關(guān),應(yīng)該是兼容整合
adf
的功能吧)。
Tabago,tom
都是組件庫,
tabago
比較好玩的是支持換膚,還有一些支持
ajax
的組件,
TOM
則是一個豐富的增強(qiáng)組件庫,大概有三十個之多,例如
TREE
,
TAB
等等。
Sandbox
是測試用的。
Oracle ADF
是
oracle
為
jsf
做的一個大型的組件庫,以前是收費(fèi)的,現(xiàn)在開源了,我沒用過,不好說。
Ajax4jsf
是為
jsf
提供
AJAX
支持的一個標(biāo)簽庫,使用它提供的標(biāo)簽,就能在原有的
JSF
程序上輕易的加上
AJAX
的功能,而且不用寫任何
Javascript
。
Facelets
這個是很激動人心的一個框架,有了這個框架才把
JSF
的組件化發(fā)揮出來,通過模板的方式來組合成我們所需要的組件,而且可以不使用
<h:input>
這樣的標(biāo)簽庫,而用
<input type=”text” jsfc=”h:input”>
這樣的方式來使用組件,這樣就可以方便的使用
UI
可視化工具去開發(fā)我們的
WEB
程序。這個框架我會在以后的文章中詳細(xì)的說,以及和
jsp2.0
的模板功能作對比。
今天就先寫到這里,今后再慢慢介紹上面的幾種技術(shù)。