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

4

你好,我曾经使用过JSF,它是一个基于组件的MVC框架。我知道很多Web项目使用Spring作为技术栈,而Spring属于“基于动作的UI框架”类别。我想知道它们之间的区别是什么?哪个更先进并且给用户更大的灵活性?有哪些优缺点?


可能是重复问题:请求MVC和组件MVC的区别 - BalusC
1个回答

5

组件化的Web框架是一种实现基于Web(HTTP)的应用程序的方式,类似于用户在GUI控件上操作并触发事件的“厚客户端”应用程序。在这里,视图(网页)是应用程序的核心。

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

两种模型都有优点和缺点。前者似乎更容易(特别是对于有Swing背景的人),但从长远来看,HTTP的请求-响应性质会妨碍程序员。后者更符合HTTP的自然适应性,并允许编写更可测试的代码(控制器)。

p.s. Java Web应用程序从MVC转向组件化框架,或者更确切地说,先出现了Struts等框架,然后出现了JSF。在.NET世界中,先出现了ASP.NET,然后是ASP.NET MVC。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接