信息互动

当前位置/ 首页/ 信息互动/ 正文

mvc是什么缩写 mvc是什么

导读 大家好,我是小典,我来为大家解答以上问题。mvc是什么缩写,mvc是什么,很多人还不知道,现在让我们一起来看看吧!不是,struts只是实现MV...

大家好,我是小典,我来为大家解答以上问题。mvc是什么缩写,mvc是什么,很多人还不知道,现在让我们一起来看看吧!

不是,struts只是实现MVC的一种代表性的框架。

MVC概述:

MVC是Model-View-Controller的简称,即模型-视图-控制器。MVC是Xerox PARC在20世纪80年代为编程语言Smalltalk-80发明的一种软件设计模式,至今已被广泛使用,最近几年被推荐为Sun公司J2EE平台的设计模式,受到越来越多的Web开发者的欢迎。

MVC设计模式:

MVC是一种设计模式,它强制性地把应用程序的输入、处理和输出分开。MVC把应用程序分成三个核心模块:模型、视图和控制器,它们分别担负不同的任务。

MVC处理过程:

首先控制器接受用户的请求,并决定应该调用哪个模型来进行处理;然后模型根据用户请求进行相应的业务逻辑处理,并返回数据;最后控制器调用相应的视图来格式化模型返回的数据,并通过视图呈现给用户。

MVC的优缺点:

1. MVC的优点

1) 可靠性(Reliability):将表示层和处理层完全分开,可以在不重新编译model和controller的情况下修改view层。

2) 复用性和适应性(reuse & adaptability):MVC使你可以使用多种view去访问相同的model。

3) 快速开发(Rapid deployment):因为MVC清晰的将表示层和处理层分开,所以使得不同的程序员可以各司其则,增加开发速度。

4) 可维护性(Maintainability):清晰的分层同样使得代码清晰、程序的可维护性提高。

2. MVC的缺点

MVC的设计实现并不十分容易,理解起来比较容易,但对开发人员的要求比较高。MVC只是一种基本的设计思想,还需要详细的设计规划。模型和视图的严格分离可能使得调试困难一些,但比较容易发现错误。实验表明,MVC由于将应用分为三层,意味着代码文件增多,因此,对于文件的管理需要费点心思。

Struts概述

Struts实质上就是在JSP MODEL2的基础上实现的一个MVC框架。在Struts框架中,模型由实现业务逻辑的JavaBean或EJB组建构成,控制器由ActionServlet和Action来实现,视图由一组JSP文件构成。

对于采用Struts框架的Web应用,在Web应用启动时就会加载并初始化ActionServlet,ActionServlet从struts-config.xml文件中读取配置信息,把它们存放到各种配置对象中,例如Action的映射信息存放在ActionMapping对象中。

当ActionServlet接收到一个客户请求时,将执行如下流程。

1) 检索和用户请求匹配的ActionMapping实例,如果不存在,就返回用户请求路径无效的信息。

2) 如果ActionForm实例不存在,就创建一个ActionForm对象,把客户提交的表单数据保存到ActionForm对象中。

3) 根据配置信息决定是否需要表单验证。如果需要验证,就调用ActionForm的validate()方法。

4) 如果ActionForm的validate()方法返回null或返回一个不包含ActionMessage的ActionErrors对象,就表示表单验证成功。如果ActionForm的validate()方法返回一个包含一个或多个ActionMessage的ActionErrors对象,就表示表单验证失败,此时ActionServlet将直接把请求转发给包含用户提交表单的JSP组件,在这种情况下,不会再创建Action对象并调用Action的execute()方法。

5) ActionServlet根据ActionMapping实例包含的映射信息决定将请求转发给哪个Action。如果相应的Action实例不存在,就先创建这个实例,然后调用Action的execute()方法。

6) Action的execute()方法返回一个ActionForward对象,ActionServlet在把客户请求转发给ActionForward对象指向的JSP组件。

7) ActionForward对象指向的JSP组件生成动态网页,返回给客户。

本文到此讲解完毕了,希望对大家有帮助。