作业七之MVC模式

1.什么是MVC

MVC全名是Model View Controller,是模型-视图-控制器的缩写,MVC设计模式的思想就是把Web应用程序分为3个核心模块:模型(Model)、视图(View)和控制器(Controller)。这三个模块分别充当不同的角色,完成不同的任务。它们之间彼此又相互联系,构成一个结构分明而又高效的整体。MVC的结构如图所示。

  • 在这个三角关系中,它们各自的功能如下所述。
  • 模型:模型是Web程序中用于表示业务数据、进行业务逻辑操作的部分。
  • 视图:视图是用户在Web浏览器中可以看到的界面。视图用来与用户进行交互:显示用户感兴趣的业务数据,并且给用户提供输入界面。
  • 控制器:控制器用来接收用户的请求,并调用模型和视图最终完成请求。

按照MVC设计模式开发的Web应用系统,当接收到用户的请求后,处理的过程如图所示。

MVC作为一种分层的、模块化的设计思想,它的优点有以下几方面:

  • 模型可以被重用。
  • 模型是自包含的,它与视图和控制器相独立。
  • 控制器提高了应用程序的灵活性和可配置性。

2.Java web应用程序的主要组件

(1)Servlet

Servlet是用Java语言编写的,它是一个Java类。因而Servlet遵守所有Java语言的语法规则,并且它可以调用一般Java程序可以调用的系统包。

Servlet是在服务器端运行的。它编译后的“.class”文件被服务器端调用和执行。Web服务器使用该class文件去处理浏览器请求,并将处理的结果返回到客户端。

Servlet的主要功能是用来接受、处理客户端请求,并把处理结果返回到客户端显示。其过程如下所述。

1.客户端把请求送到Servlet处理

2.Servlet处理请求

3.Servlet把请求的结果返回到客户端显示

(2)JavaBean

JavaBean组件就是一些遵循特定接口格式的Java类。这种接口格式对Java类的方法命名、底层行为、继承与实现等有特定的要求。在Java Web开发中,JavaBean往往用来封装程序的业务逻辑,它们是可以重用的组件。通过使用JavaBean,JSP文件中的Java脚本可以大大地减少,从而使JSP更容易维护。

JavaBean在Java Web开发中主要用来处理业务逻辑。JSP或者Servlet可以调用JavaBean去处理复杂的操作。

JavaBean的属性用于表示其内部状态。在Java Web开发中,其属性主要用来存储中间数据。例如,可以用从数据库中取出的数据来设置JavaBean的属性。这样JSP文件就可以在需要时从JavaBean中把这些值取出,然后在客户端将其显示出来。

我们常用<jsp:useBean>这个标签在JSP文件中使用JavaBean。在JavaBean中,可以使用JDBC进行数据库操作,比如连接数据库、查询数据库、向数据库中插入数据等。在JSP中使用Java脚本虽然也可以进行数据库操作,但是这样会造成页面过于复杂、臃肿,维护起来非常不方便,这种缺点在大型项目中更加突出。使用JavaBean操作数据库,然后把操作的结果返回给JSP页面去显示,这样就减轻了JSP的负担,使其更专注于页面显示。

3.Java Web解决方案(开发方法)

JSP页面编程

JSP+JavaBean设计模式

JSP+Servlet设计模式

JSP+Servlet+JavaBean设计模式

4.常用的Java Web的MVC框架

(1)Spring MVC

它的设计是围绕DispatcherServlet展开的,DispatcherServlet负责将请求派发到特定的handler。核心是 DispatcherServlet,它的作用是将请求分发给不同的后端处理器(controller)。

(2)Struts

它是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。Struts把Servlet、JSP、自定义标签和信息资源整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间。Struts就是MVC中的C的角色,因为它主要是负责action,处理各种请求。

时间: 2024-10-15 11:58:56

作业七之MVC模式的相关文章

兄弟连新版ThinkPHP视频教程2.ThinkPHP 3.1.2 MVC模式和URL访问

## ThinkPHP 3 MVC模式和URL访问#讲师:赵桐正微博:http://weibo.com/zhaotongzheng 本节课大纲:一.什么是MVC                 //了解    M -Model 编写model类 对数据进行操作    V -View  编写html文件,页面呈现    C -Controller 编写类文件(UserAction.class.php)二.ThinkPHP的MVC特点         //了解三.ThinkPHP的MVC对应的目录 

027-应用管理之MVC模式-iOS笔记

学习目标 1.[理解]九宫格坐标计算 2.[理解]应用添加子控件 3.[理解]应用子控件添加数据 4.[理解]字典转模型 5.[掌握]xib初体验 6.[理解]初识MVC设计模式 7.[理解]根据MVC模式封装我们的应用 一.九宫格坐标计算 实现以九宫格的形式展示应用信息,点击按钮后能监听按钮单击事件.类似这种类型app往往都是动态加载应用数据,所以我们不可能将数据写死,因为我们不确定应用数量,所以就无法确认控件的数量.最终效果图如下: 界面分析: 一个控件需要显示在界面上,必须为其设置fram

使用MVC模式开发程序,完成数据的模糊查询【转】

编写程序:使用MVC模式开发程序,完成数据的模糊查询. 要求: (1)index.jsp用于输入要查询的数据. (2)result.jsp:用于显示结果. (3)queryServlet:用于验证数据.实例化JavaBean.调用连接数据库.控制页面跳转 (4)queryDAO:用于连接数据库及进行数据库的操作如:查询.删除.更改等 (5)Student:JavaBean用于数据的封装,方便将查询结果在servlet与jsp页面之间进行传递等 以上几个部分共同构成了MVC模式,JSP为MVC模式

【Unity】基于MVC模式的背包系统 UGUI实现

本文基于MVC模式,用UGUI初步实现了背包系统. 包含点击和拖拽两种逻辑,先献上源代码,工程和分析稍后补充. Model 层 using UnityEngine; using UnityEngine.UI; using System.Collections; using System.Collections.Generic; /// <summary> /// 脚本功能:MVC模式--Model层,定义物品结构,保存物品数据 /// 添加对象:Bag 背包(Canvas下的空对象) ///

Swing程序最佳架构设计—以业务对象为中心的MVC模式(转)

前言: 我打算写一系列关于Swing程序开发的文章.这是由于最近我在做一个Swing产品的开发.长期做JavaEE程序,让我有些麻木了.Swing是设计模式的典范,是一件优雅的艺术品,是一件超越时代的产品! 有机会作Swing软件的开发,让我非常有感觉! 呵呵,希望有机会能够用Java3D编写软件,那种感觉一定更棒! Java和Swing都是杰作.我这个人对别人一向很挑剔的,能够得到我由衷地赞誉,可想而知它们有多优秀了.奇怪的是,它们居然一直都无法占领桌面市场.有人说这是技术的原因.我认为这应该

IOS常用设计模式——MVC模式(IOS开发)

Cocoa Touch中的MVC模式中,模型和视图不能进行通信,所有通信都是控制器完成. - 模型:是个较为特殊的对象,本质是视图的数据,Text Field输入的内容,Button上的标签都是模型,不一定非要创建一个模型类. - 视图:UIView,这个比较容易理解,向控制器发送请求. - 控制器:更新视图作为对用户请求的回应,更新模型的数据. 模型里面就是数据,视图就是个界面,控制器是中间的更新媒介. 1.触摸myButton时候,会触发方法. 2.视图控制器实现了一些委托和数据源的协议.

Java的MVC模式简介

Java的MVC模式简介 MVC(Model View Control)模型-视图-控制器 首先我们需要知道MVC模式并不是javaweb项目中独有的,MVC是一种软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器(Controller),即为MVC.它是一种软件设计的典范, 一.MVC与模板概念的理解 MVC本来是存在于Desktop程序中的,M是指数据模型,V是指用户界面,C则是控制器.使用MVC的目的是将M和V的实现代码分离,从而使同一个

MVC模式介绍

MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑.数据.界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑.MVC被独特的发展起来用于映射传统的输入.处理和输出功能在一个逻辑的图形化用户界面的结构中. MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现

用户管理系统网站框架改进之MVC模式

从之前的用户管理系统中我们会发现,JSP主要是做界面的,但却用了JSP来对用户进行验证和分页处理,而Servlet处理页面的转跳是最快捷和最方便的,所以对用户管理系统的框架进行了改进,使用MVC模式. MVC是一种设计模式,它强制性的使应用程序的输入.处理和输出分开.使用MVC应用程序被分为三个核心部件:模型.视图和控制器.它们各自处理自己的任务. MVC的各个字母分别是M(model模型).V(view视图)和C(controller控制器) M主要由Java class来处理,也可以是Jav