欢迎来到天天文库
浏览记录
ID:20272391
大小:61.50 KB
页数:6页
时间:2018-10-11
《java web层框架比较》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、JavaWeb层框架比较——比较JSF、SpringMVC、Stripes、Struts2、Tapestry和Wicket这是MattRaible在今年6月24-27号召开的JA-SIG夏季会议上所作的主题演讲,Matt从众多方面对JavaWeb层框架做了一个全面、深入的比较。笔者认为这是一份及时的文档,它对开发者如何判定一个Web层框架的好坏、如何选择适合自己项目的框架有极大的指导作用。本文是对MattRaible演讲稿的整理归纳。【作者介绍】MattRaible,开源框架AppFuse的发起者、主要开发者;《Profess
2、ionalJSP2.0》、《SpringLive》等书的作者;众多会议的演讲者,MySQLUserConference,ApacheCon,ApacheConEU等;现任RaibleDesigns的CEO。 首先,Matt以自己的实践经验,指出了JavaWeb层框架——JSF、SpringMVC、Stripes、Struts2、Tapestry和Wicket他们各自的优、缺点: JSF 优点: JavaEE标准,这意味着有很大的市场需求和更多的工作机会 上手快速并且相对容易 有大量可用的组件库 缺
3、点: 大量的JSP标签 对REST和安全支持不好 没有一个统一的实现。既有SUN的实现,又有Apache的实现——MyFaces。 SpringMVC 优点: 对覆盖绑定(overridingbinding)、验证(validation)等提供生命周期管理 与许多表示层技术/框架无缝集成:JSP/JSTL、Tiles、Velocity、FreeMarker、Excel、XSL、PDF等 便于测试——归功于IoC 缺点: 大量的XML配置文件 太过灵活——没有公共
4、的父控制器 没有内置的Ajax支持 Stripes 优点: 不需要书写XML配置文件 良好的学习文档 社区成员很热心 缺点: 社区比较小 不如其他的项目活跃 ActionBean里面的URL是硬编码的 Struts2 优点: 架构简单——易于扩展 标记库很容易利用FreeMarker或者Velocity来定制 基于控制器或者基于页面的导航 缺点: 文档组织得很差 对新特征过分关注 通过Google搜索到的大多是Strut
5、s1.x的文档 Tapestry 优点: 一旦学会它,将极大地提高生产率 HTML模板——对页面设计师非常有利 每出一个新版本,都会有大量的创新 缺点: 文档过于概念性,不够实用 学习曲线陡峭 发行周期长——每年都有较大的升级 Wicket 优点: 对Java开发者有利(不是Web开发者) 页面和显示绑定紧密 社区活跃——有来自创建者的支持 缺点: HTML模板和Java代码紧挨着 需要对OO有较好的理解 Wicket逻
6、辑——什么都用Java搞定接着,Matt通过采访这些框架的作者,与他们讨论各种开源的JavaWeb框架,并且突出各个框架的长处、听取框架作者对其他框架的看法,希望借此了解这些框架的未来发展方向。 下列是一些被采访者: JSF,JacobHookom RIFE,GeertBevin Seam,GavinKing SpringMVC,RobHarrop SpringWebFlow,RobHarropandKeithDonald Stripes,TimFennell Struts1,DonB
7、rown Tapestry,HowardLewisShip Trails,ChrisNelson Struts2,PatrickLightbody Wicket,EelcoHillenius Matt对采访做了如下总结: JSF: 如果你想让web应用具有类似桌面程序的功能性,那么JSF的标准规范和大量第三方组件库的支持值得你信赖。 SpringMVC: 综合了许多不同的技术,这使得它可以被广泛地应用到不同类型的项目中去;它可以被当作web应用开发的一个基础平台。 S
8、tripes: 可以被应用到存在大量复杂数据交互的程序中;有强大的类型转换、绑定和验证功能;可以使管理大的复杂表单以及直接映射它们到域对象变得简单…… Tapestry: 在中到大型项目中,表现突出(当然,你也可以只把它应用到单个页面上),在这些项目中,你可
此文档下载收益归作者所有