服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 核心技术 > 查看文档

jsf伴随着java ee 5从幕后走上前台

  三年前jsf就已经在sun的实验室里诞生,但直到今天才伴随java ee 5,作为规范的一部分,从幕后走上前台。虽然已经正式成为java ee规范的一部分,并且获得越来越多程序员的青睐,但jsf的前途依然不容乐观。

  三年前jsf就已经在sun的实验室里诞生,但直到今天才伴随java ee 5,作为规范的一部分,从幕后走上前台。jsf是第一个以用户界面为核心的java web框架,与其他java web框架以“页面”为控制粒度不同的是,jsf的控制粒度已经细化到页面上的“组件”,这是jsf简化java web开发的关键点之一。虽然已经正式成为java ee规范的一部分,并且获得越来越多程序员的青睐,但jsf的前途依然不容乐观。

  1. 带着“用户界面”的烙印,jsf从幕后走上前台

  伴随着从j2ee 1.4向java ee 5的升级,jsf作为java企业应用规范的一部分,登上了java web编程的舞台。雪藏了将近3年时间,经过sun专家组的一次次修订,经过jsf支持者的一轮轮测试,经过java web开发社区的一波波辩论,jsf终于从sun的实验室走出,首次以规范的名义,出现在程序员的眼前。没有鲜花、没有掌声,sun只是简单地将jsf推上前台,如同它的很多前辈那样,sun给予它生命,而此后漫长的成长之路,则完全要靠它自己去走。

  刚刚踏上java web热土的jsf,且顾且行,前方道路上的每一处拐角,似乎都隐藏着无数的未知。前途坎坷,除了sun那鼓励中略带担忧的目光,jsf再也没有什么可以依靠的了。正所谓生死有命,富贵在天,在危机四伏的java web世界里,jsf的未来,谁也无法预测。

  jsf的全称是javaserver faces,这是sun的专家组赋予jsf的名称。javaserver这个单词大家应该耳熟能详了,jsp中的“js”也是javaserver的缩写,不过与jsp中的“p”所代表的“pages”不同的是,jsf中的“f”是个称为“faces”的新术语。虽然sun没有对faces的具体含义作出官方的解释,但是,其隐含的意义非常明显,那就是“界面”。事实上,在sun的jsf规范中,专家组正是将jsf定义为“java web应用的用户界面框架”。这个定义虽然寥寥数语,十分简洁,但突出了jsf的“用户界面”特征,为jsf烙下了“用户界面”的烙印。

  java web的程序员期待一个用户界面框架已经很久了。虽然java web的框架五花八门,多不胜数,但真正以“用户界面”为核心和立足点的,jsf是第一个。多数java web框架,不约而同地将“页面”作为用户界面的最小元素加以控制,而jsf将用户界面的最小元素聚焦到了页面上的“组件”。

  相对于前者以页面为控制粒度的粗放模式,jsf以“组件”为控制粒度的细致模式,无疑给普通java web程序员带来了更大的想象空间。更为重要的是,jsf细化了控制粒度,却并没有以加大java web编程的复杂度为代价,相反,作为java ee 5“简化java开发”使命的担负者之一,jsf在java web编程上极大地减轻了普通程序员的负担。这点我们将在后文中,通过一个具体的实例加以论证。

  2. 虽然名正言顺,jsf依然前途坎坷

  jsf对于上升为官方规范的期待,甚至比java web程序员对用户界面框架的期待,还要久远。jsf的历史远不止三年,其生命历程的起点,可以追溯到5年前。2001年5月,sun在jsr#127中提出制订一个以用户界面框架为目标的规范,经过半个月的投票表决,se/ee执行委员会以10票同意、5票反对和1票弃权的结果批准了jsr#127。从此,jsf踏上了生命征途。2001年5月底,jsf专家组成立,着手制订规范文档。历经多次的讨论和修订,jsf的规范1.0版,在差不多三年后的2004年3月,才得以面世。这标志着jsf可以被普通程序员正式使用了。

  为了让jsf的程序员有一个沟通交流的场所,sun在自己的网站上为jsf开辟了一个论坛。论坛为jsf的发展起到了极大的促进作用。来自世界各地的jsf爱好者们,在论坛里讨论jsf的使用心得,发表疑问,寻求帮助,sun专家组也定期不定期在论坛上露面,解答一些疑难问题。jsf1.0版的很多bug,就是在论坛中被发现和披露的。论坛中不乏java高手,有一些高手在发现bug后,甚至直接分析和修改sun的jsf代码,给出自己的解决方案,并在论坛中和其他开发者分享。

  名不正则言不顺,三年来,未获j2ee官方规范青睐的jsf,在jsf社区虽然被炒得热火朝天,但离普通程序员一直很远。现在,jsf终于加入了java ee官方规范的行列,进入java web编程领域已经名正言顺了。官方规范的号召力是巨大的,jsf正名也就半年时间,统计表明,jsf在这半年中吸引的开发者,超过了过去三年总和的一倍有多。jsf的前途看上去一片光明。

  那么,jsf的眼前真的是一马平川吗?现实并非如此!横亘在jsf前进道路上的障碍,不但有强大的jsp,还有sun那令人失望的商业推广策略。


  阅读关于java jsf sun web 的全部文章

扫描关注微信公众号