MVC简介

 

目前能实现MVC模式的框架有StrutsSpringWebWorkMaverickVRaptorAurora,而前三个又是比较流行的非常好的web开发框架,下面逐一进行介绍:

Struts

Struts是一个基于Sun J2EE平台的MVC框架,主要是采用ServletJSP技术来实现的。Struts是作为Apache Jakarta项目的组成部分。该项目的目标是为建立Java web 应用程序而提供的一个开源框架,目前大家一般使用的版本为1.2。通过使用struts 框架可以改进和提高Java Server Pages (JSPs)Servlet、标签库以及面向对象的技术在web应用程序中的应用。应用Struts框架可以减少你应用MVC(Model- View -Controller)设计模式的开发时间,从而提高开发效率。把Struts应用于J2ee客户端,应该是一个不错的选择。

谈到Struts,我们就不得不提到MVC设计模式。MVCModel-View-Controller的缩写,它是web应用当中的常用的设计模式。MVC 减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化。 StrutsMVC的一种实现,它很好的结合了Jsp,Java Servlet,Java Bean ,Taglib等技术。那么我们来看看Struts框架的工作原理:

模型(M):在Struts中,主要存在三种bean,分别是:Action,ActionForm,EJB或者Java BeanActionForm用来封装客户请求信息,Action取得ActionForm中的数据,再由EJB或者Java Bean进行处理。

视图(V):主要是由Jsp来控制页面输出的。它接收到Action Form中的数据,利用htmltaglibbeanlogic等显示数据。

控制(C):在Struts中,ActionServlet起着一个控制器(Controller)的作用。ActionServlet是一个通用的控制组件。这个控制组件提供了处理所有发送到StrutsHTTP请求的入口点。它截取和分发这些请求到相应的动作类(这些动作类都是Action类的子类)。另外控制组件也负责用相应的请求参数填充 Action Form(通常称之为FromBean,并传给动作类(通常称之为ActionBean)。动作类实现核心商业逻辑,它可以访问java bean 或调用EJB。所有这些控制逻辑利用Struts-config.xml文件来配置。

Spring

       轻量级的企业应用开发越来越受到广大J2EE应用开发者的追捧,而Spring框架又是轻量级容器的杰出代表。由于Spring的使用日渐广泛,因此已有许多基于WebSphere应用服务器(WAS)的应用采用了Spring框架。Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。

Spring框架可以与许多已有的框架技术结合使用。它可以用在任何 J2EE 服务器中,大多数功能也适用于不受管理的环境。Spring框架在设计上可以独立构建应用或者结合已有的框架一起构建应用。Spring 的核心要点是:支持不绑定到特定 J2EE 服务的可重用业务和数据访问对象。毫无疑问,这样的对象可以在不同 J2EE 环境 Web EJB)、独立应用程序、测试环境之间重用。

WebWork

       WebWork是由OpenSymphony组织开发的,致力于组件化和代码重用的拉出式MVC模式J2EE Web框架。WebWork目前最新版本是2.1,现在的WebWork2.x前身是Rickard Oberg开发的WebWork,但现在WebWork已经被拆分成了Xwork1WebWork2两个项目。 Xwork简洁、灵活功能强大,它是一个标准的Command模式实现,并且完全从web层脱离出来。 Xwork提供了很多核心功能:前端拦截机(interceptor),运行时表单属性验证,类型转换,强大的表达式语言(OGNL the Object Graph Notation Language),IoCInversion of Control倒置控制)容器等。 WebWork2建立在Xwork之上,处理HTTP的响应和请求。WebWork2使用ServletDispatcherHTTP请求的变成Action(业务层Action), session(会话)application(应用程序)范围的映射,request请求参数映射。WebWork2支持多视图表示,视图部分可以使用JSP, Velocity, FreeMarker, JasperReportsXML等。在WebWork2.2中添加了对AJAX的支持,这支持是构建在DWRDojo这两个框架的基础之上。

Maverick

Maverick是一个轻量而完备的MVC Model 2框架。MaverickAction称作ControllerController只接受一个ControllerContext参数。requestresponse, servlet config, servelt context等输入信息都包装在ControllerContext里面,而且Model也通过ControllerContextmodel属性返回。整个编程结构清晰。但由于ControllerContext只有一个model属性可以传递数据,程序员必须把所有需要的数据都打包在一个对象里面设置到model属性里。这种麻烦自然而然会导致这样的可能用法,直接把Controller本身设置为model,这又回到了Controller(Action)Model一体。

VRaptor

VRaptor是一个MVCweb框架.它主要是基于IOC(反转控制),使用构造子注入的依赖注入模式来分离商业逻辑类与其它组成部分.

Aurora

Aurora是一个开源的,可配置的,完全面向对象的MVC框架。Auroraform控制器用的是Spring框架

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值