Java Web框架简介
Web框架是人们在使用某种语言编写Web应用服务端时关于架构的最佳实践。
  有些Web框架是从实际的Web项目抽取出来的,也就是说,做一个具体的应用项目时,采取的架构比较理想,就把这部分和领域无关,而仅和Web的请求和响应处理有关的设计拿出来,形成一个基础,在开发别的应用项目的时候则可以从这基础做起,让开发者更关注领域问题,而不是Web的请求和响应的控制。
  也有些Web框架是直接设计出来的,很多Web框架在设计的时候也都借鉴了别的框架,吸取优点,修改不足,并根据自己的框架的定位,在特定方面有自己的发挥,形成了自己的特点,比如有的web框架追求的是松耦合性,层次,结构之间都不密切绑定,有的Web框架则追求敏捷性,强调约定而不是配置。
Java Web框架虽然各不相同,但基本也都是遵循特定的路数的:使用Servlet或者Filter拦截请求,使用MVC的思想设计架构,使用约定,XML Annotation实现配置,运用Java面向对象的特点,面向抽象实现请求和响应的流程,支持JspFreemarkerVelocity等视图。
 
  JSF
  优点:
  Java EE标准,这意味着有很大的市场需求和更多的工作机会
  上手快速并且相对容易
  有大量可用的组件库
  缺点:
  大量的JSP标签
  对REST和安全支持不好
  没有一个统一的实现。既有SUN的实现,又有Apache的实现——MyFaces
国内的OperaMasks还支持AJAX,以及有开发工具支持
 
  Spring MVC
  优点:
  对覆盖绑定(overriding binding)、验证(validation)等提供生命周期管理
  与许多表示层技术/框架无缝集成:JSP/JSTLTilesVelocityFreeMarkerExcelXSLPDF
  便于测试——归功于IoC
  缺点:
  大量的XML配置文件
  太过灵活——没有公共的父控制器
没有内置的Ajax支持
 
  Stripes
  优点:
  不需要书写XML配置文件
  良好的学习文档
  社区成员很热心
  缺点:
  社区比较小
  不如其他的项目活跃
ActionBean里面的URL是硬编码的
 
  Struts 2
  优点:
  架构简单——易于扩展
  标记库很容易利用FreeMarker或者Velocity来定制
  基于控制器或者基于页面的导航
  缺点:
  文档组织得很差
  对新特征过分关注
通过Google搜索到的大多是Struts 1.x的文档
 
  Tapestry
  优点:
  一旦学会它,将极大地提高生产率
  java的基本框架HTML模板——对页面设计师非常有利
  每出一个新版本,都会有大量的创新
  缺点:
  文档过于概念性,不够实用
  学习曲线陡峭
发行周期长——每年都有较大的升级
 
  Wicket
  优点:
  对Java开发者有利(不是Web开发者)
  页面和显示绑定紧密
  社区活跃——有来自创建者的支持
  缺点:
  HTML模板和Java代码紧挨着
  需要对OO有较好的理解
  Wicket逻辑——什么都用Java搞定
 

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。