组件基础MVC框架和基于动作的MVC框架

时间:2012-01-26 08:17:24

标签: model-view-controller jsf spring-mvc

您好我使用的是基于组件的MVC框架JSF。我知道很多Web项目都使用Spring作为他们的技术而Spring属于“基于动作的UI框架”类别。我想知道这里的区别是什么?哪一个更先进,为用户提供更多灵活性?一些利弊?

1 个答案:

答案 0 :(得分:5)

基于组件的Web框架是一种实现基于Web(HTTP)的应用程序的方法,类似于胖客户端应用程序,其中用户操作GUI控件,这些控件会因事件而触发操作。这里的视图(网页)是应用程序的核心部分。

基于行动的Web框架强调HTTP协议的请求 - 响应特性,其中请求表示要执行的操作(通常:请求URI映射到操作,请求参数/正文映射到操作参数)。这里的视图只是渲染操作/操作结果的一种方式。

两种型号都有利弊。前者似乎更容易(特别是如果有一个Swing背景),但从长远来看,HTTP的req-res性质是程序员的方式。后者更适合HTTP,并允许编写更多可测试的代码(控制器)。

P.S。 Java Web应用程序从MVC转向基于组件的框架,或者首先是Struts等,然后是JSF。在.NET世界中,首先是ASP.NET,然后是ASP.NET MVC。