Posted on 2006-12-21 10:55
itVincent 阅读(3725)
评论(5) 编辑 收藏 所属分类:
JSF
最近的一个大项目过去了,需求的变更真是杀人不偿命啊,大家都辛苦了
N
个加班,终于交了客户。前段时间做的
JSF
研究,终于有时间总结一下了。
JSF
作为一个标准,里面的设计处处都感觉到
SUN
的习惯与痕迹,对于一直从事开发
JSF
或者
Struts
的开发人员来说,
JSF
算是看起来会比较顺眼的(我用
Tapestry
,当然看
JSF
也很顺眼)。没做这个
JSF
研究之前,一直都是听到
JSF
的优点:
POJO
,组件化,兼容
JSP
,性能也不错,还有国际化支持,页面导航等的特点,重点它是一个标准,头头们比较放心。
首先解答一个初学者的困惑,大家听得比较多的是,
JSF1.1
,
JSF1.2
,
myfaces,oracle ADF,ajax4jsf
,
facelets,
它们究竟是什么,有什么关系呢?
JSF1.1
、
1.2
都是
JSF
的标准,定义例如接口、规范(
JSF
是面向接口编程的),必须通过实现才能被我们所使用,而实现包括有
JSF RI(Reference Implementation)
,还有
myfaces core1.1.4
的实现等。
JSF RI
是
SUN
对
JSF
的实现,相对来说兼容性比较好,也比较稳定(因为
1.1
已经很久没更新过了,已经转向
1.2
去了),而
myfaces
更新比较快,功能也比较多一点,初学的推荐
JSF RI1.1
就可以了,
1.2
需要新的
servlet2.5/jsp2.1
以及服务器支持,现在还不稳定。
myfaces
,它是一个大的项目,下面有几个子项目,分别是
myfaces core, sandbox ,tabago,tomahawk
,(奇怪的名字,好难说,我简称它为
TOM
),还有一个新的
ADF Faces
(跟
oracle adf
有关,应该是兼容整合
adf
的功能吧)。
Tabago,tom
都是组件库,
tabago
比较好玩的是支持换肤,还有一些支持
ajax
的组件,
TOM
则是一个丰富的增强组件库,大概有三十个之多,例如
TREE
,
TAB
等等。
Sandbox
是测试用的。
Oracle ADF
是
oracle
为
jsf
做的一个大型的组件库,以前是收费的,现在开源了,我没用过,不好说。
Ajax4jsf
是为
jsf
提供
AJAX
支持的一个标签库,使用它提供的标签,就能在原有的
JSF
程序上轻易的加上
AJAX
的功能,而且不用写任何
Javascript
。
Facelets
这个是很激动人心的一个框架,有了这个框架才把
JSF
的组件化发挥出来,通过模板的方式来组合成我们所需要的组件,而且可以不使用
<h:input>
这样的标签库,而用
<input type=”text” jsfc=”h:input”>
这样的方式来使用组件,这样就可以方便的使用
UI
可视化工具去开发我们的
WEB
程序。这个框架我会在以后的文章中详细的说,以及和
jsp2.0
的模板功能作对比。
今天就先写到这里,今后再慢慢介绍上面的几种技术。