Java Web层框架——JSF、Spring MVC、Stripes、Struts 2、Tapestry和Wicket他们各自的优点和缺点

JSF

  优点:

  ◆Java EE标准,这意味着有很大的市场需求和更多的工作机会
  ◆上手快速并且相对容易
  ◆有大量可用的组件库

  缺点:

  ◆大量的JSP标签
  ◆对REST和安全支持不好
  ◆没有一个统一的实现。既有SUN的实现,又有Apache的实现——MyFaces。
  ◆国内的OperaMasks还支持AJAX,以及有开发工具支持

  Spring MVC

  优点:

  ◆对覆盖绑定(overriding binding)、验证(validation)等提供生命周期管理
  ◆与许多表示层技术/框架无缝集成:JSP/JSTL、Tiles、Velocity、FreeMarker、Excel、XSL、PDF等
  ◆便于测试——归功于IoC

  缺点:

  ◆大量的XML配置文件
  ◆太过灵活——没有公共的父控制器
  ◆没有内置的Ajax支持

  Stripes

  优点:

  ◆不需要书写XML配置文件
  ◆良好的学习文档
  ◆社区成员很热心

  缺点:

  ◆社区比较小
  ◆不如其他的项目活跃
  ◆ActionBean里面的URL是硬编码的

  Struts 2

  优点:

  ◆架构简单——易于扩展
  ◆标记库很容易利用FreeMarker或者Velocity来定制
  ◆基于控制器或者基于页面的导航

  缺点:

  ◆文档组织得很差
  ◆对新特征过分关注
  ◆通过Google搜索到的大多是Struts 1.x的文档

  Tapestry

  优点:

  ◆一旦学会它,将极大地提高生产率
  ◆HTML模板——对页面设计师非常有利
  ◆每出一个新版本,都会有大量的创新

  缺点:

  ◆文档过于概念性,不够实用
  ◆学习曲线陡峭
  ◆发行周期长——每年都有较大的升级

  Wicket

  优点:

  ◆对Java开发者有利(不是Web开发者)
  ◆页面和显示绑定紧密
  ◆社区活跃——有来自创建者的支持

  缺点:

  ◆HTML模板和Java代码紧挨着
  ◆需要对OO有较好的理解
  ◆Wicket逻辑——什么都用Java搞定






 JSF:Jacob Hookom
  RIFE:Geert Bevin
  Seam:Gavin King
  Spring MVC:Rob Harrop
  Spring Web Flow:Rob Harrop and Keith Donald
  Stripes:Tim Fennell
  Struts 1:Don Brown
  Tapestry:Howard Lewis Ship
  Trails:Chris Nelson
  Struts 2:Patrick Lightbody
  Wicket:Eelco Hillenius

TechTarget中国原创内容,原文链接:http://www.searchsoa.com.cn/showcontent_27828.htm

你可能感兴趣的:(spring mvc)