[前言]:从2000年开始的MVC模式框架Struts看来将要被基于组件的事件驱动模型类框架替代,JSF和Tapestry都是新一代可能成为Struts的终结者。
JSF和Tapestry都是基于页面组件技术的开发框架,但jsf基于jsp,仍然是jsp架构,开发维护起来非常麻烦。tapestry则不同,是基于servlet的一种完全页面组件化的开发框架,而且现在已经非常成熟,目前已经推出t4.0-beta2。
页面开发走向组建化是一种越来越明显的趋势,这方面tapestry可以说是引导了这个方向,也许是sun太厉害,jsf一出生就得到大家的关注,不过顺此东风,tapestry的用户社区比以前更加繁荣了:
http://news.gmane.org/gmane.comp.java.tapestry.user
tapestry有很多范例出色,参看它的官方网站:
http://jakarta.apache.org/tapestry/
若想致力于web页面的开发,个人觉得jsp/serlvet是首要精通的,至于选择框架,则是一件费精力的事情。框架的目的是为了简化开发流程,提高生产效率,典型的框架如turbine、struts、webwork、jsf、tapestry等。如何选择框架是一个经久不衰的讨论,没有多年的实践经验是难以作出实际评价和最终抉择的。愚以为turbine过于厚重,无论是开发速度还是运行速度都令人难以接受,2.4M1到现在快一年还是M!,运行起来真是满如蜗牛,打开一个页面要等浏览器的地球要转上半圈,这也许要归功于velocity解析和没有页面缓存的功劳了。还有就是扩展性、可维护性等,实际上都很差,象它的核心类Turbine,居然定义为final!实际开发起来还不如我自己实现的velocity+servlet+filter框架效率高,速度快。
struts,webwork实际都是jsp的MVC包装,无法摆脱jsp页面难以维护的烦恼,也许开发起来快,但维护呢?还有就是美工人员,他们都得懂jsp。实际的mvc分工在页面这块还是打了折扣。
新闻热点
疑难解答