MVC在Web数据管理平台中的应用-毕业论文.doc

上传人:滴答 文档编号:1272757 上传时间:2019-01-25 格式:DOC 页数:26 大小:611.50KB
下载 相关 举报
MVC在Web数据管理平台中的应用-毕业论文.doc_第1页
第1页 / 共26页
MVC在Web数据管理平台中的应用-毕业论文.doc_第2页
第2页 / 共26页
MVC在Web数据管理平台中的应用-毕业论文.doc_第3页
第3页 / 共26页
MVC在Web数据管理平台中的应用-毕业论文.doc_第4页
第4页 / 共26页
MVC在Web数据管理平台中的应用-毕业论文.doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

1、厦门大学软件学院本科毕业论文 本科毕业论文 (科研训练、毕业设计 ) 题 目: MVC 在 Web 数据管理平台中的应用 姓 名: 学 院:软件学院 系: 专 业:软件工程 年 级: 学 号: 指导教师(校内): 职称: 指导教师(校外): 职称: 年 月 日 厦门大学软件学院本科毕业论文 MVC 在 Web 数据管理平台中的应用 摘要 MVC 即 Model(模型)、 View(视图)、 Controller(控制器),是一种目前广泛流行的软件设计 模式。 MVC 把一个应用的输入、处理、输出按照 Model、 View、 Controller 的方式进行分离, 形成三个层 模型层、视图层、

2、控制层。 模型表示应用的数据及操作这些数据的逻辑方法。视图将模型的当前状态展示给用户,具体的显示方法由视图负责,因此一个模型可以适用多个不同的视图。控制器负责交互和将用户输入的数据导入模型,它还利用用户的输入将应用转向其它视图。 恒好公司( Good Forever)是厦门的一家贸易公司,我们开发的 GF2000 系统 用 作其统一的 Web 数据管理平台, 根据公司的业务特点与业务流程,系统划 分为:产品管理、项目管理、样品管理、定单管理、出货管理、收汇管理、系统管理共七个模块,每个模块对数据都有频繁的增加、删除、修改、查询操作 , 这些操作即 MVC 设计模式中的模型,必须与呈现给用户的界

3、面即视图分离,实现当用户要求改变界面时不会影响到逻辑层的代码。 关键词 设计模式 模型 视图 控制器 厦门大学软件学院本科毕业论文 Abstract MVC, which means Model, View and Controller, is a widely used design pattern. MVC separates the input, processing and output according to model, view and controller. It has three layers - model layer, view layer and control l

4、ayer. Model represents the business data and the method to handle it. View shows the current state of model to the user, and it takes charge of how to display the content. So, one model may apply to many views. Controller is responsible for interaction and imports the data user input to the model. I

5、t can also turn the application to other view with the users input. Good Forever Co. is a foreign trade company in Xiamen. The system, named GF2000, is developed as its uniform data management platform on web. According to the business characteristic and flow, the system is divided into seven module

6、s, product management, project management, sample management, order management, shipping management, remit management and system management. Each module has frequent operation on data, such as insert, delete, update and search. These operations, the model of MVC, must be separated from the user inte

7、rface, and when user demand changing the interface it doesnt influence the model layer. Keyword design pattern model view controller 厦门大学软件学院本科毕业论文 目录 第 1 章 引言 . 1 第 2 章 MVC 概述 . 2 2.1 Model(模型) . 2 2.2 View(视图) . 3 2.3 Controller(控制器) . 3 2.4 MVC 设计模式小结 . 4 第 3 章 GF2000 项目 . 5 3.1 产品管理 . 5 3.2 项目管理

8、 . 6 3.3 样品管理 . 7 3.4 定单管理 . 8 3.5 出货管理 . 8 3.6 收汇管理 . 9 3.7 系统管理 . 10 第 4 章 MVC 在 GF2000 中的应用 . 11 4.1 GF2000 的 Model(模型) . 11 4.2 GF2000 的 View(视图) . 11 4.3 GF2000 的 Controller(控制器) . 13 4.4 GF2000 中如何实现 MVC . 14 4.4.1 数据库字段表( Sys_Field) . 14 4.4.2 两个关键函数 . 15 4.4.3 分离模型与视图 . 17 总结 . 20 致谢语 . 21 参

9、考文献 . 22 厦门大学软件学院本科毕业论文 1 第 1章 引言 MVC 最初是在 Smalltalk-80 中被用来构建用户界面的 , M 代表模型 Model, V 代表视图 View, C 代表控制器 Controller。 MVC 的目的是增加代码的重用率,减少数据表达,数据描述和应用操作的耦合度。 同时也使得软件可维护性,可修复性,可扩展性 ,灵活性以及封装性大大提高。 单用户的应用通常是以事件驱动的用户界面为组织结构的。开发人员用一个界面工具画了一个用户接口界面,然后编写代码根据用户输入去执行相应的动作,许多交互式的开发环境鼓励这么做,因为它强调先有界面然后再有功能。一些软件设计

10、模式策略是这样的,然后经常将固定后的代码融入最后的系统当中。导致的结果就是,程序组织围绕用户界面元素和用户在那些界面元素上的动作,数据的存储,应用的功能以及用来显示的代码都杂乱无章的缠绕在一起。在单用户的系统里代码结构是可以这样的,因为系统需求不会频繁变化。但是对一个 大的系统如大型 Web 系统,或电子商务系统来说就不太适用了。 通过把数据模式从各种可以被存取和控制的数据中分离出来可以改善分布式系统的设计。 MVC 设计模式由三部分组成。模型是应用对象,没有用户界面。视图表示它在屏幕上的显示,代表流向用户的数据。控制器定义用户界面对用户输入的响应方式,负责把用户的动作转成针对 Model 的

11、操作。 Model 通过更新 View 的数据来反映数据的变化。 恒好公司( Good Forever)是厦门的一家贸易公司,我们开发的 GF2000 项目为该 公司提供一个统一的 基于 Web 的 数据 管理 平台 ,该 平台应用 MVC 设计模式,很好地实现了表示 层与逻辑层的分离, 使该平台具有良好的可扩展性、可维护性。 厦门大学软件学院本科毕业论文 2 第 2章 MVC 概述 MVC 包括 3 种类型, Model(模型)是应用对象, View(视图)是界面对象, Controller(控制器)是用户界面对用户输入的响应。 在 MVC 之前,用户程序的构建往往将这几部分混在一起,而 M

12、VC 将它们分开了,以增加灵活性和复用性。 MVC 通过在模型和视图之间建立查询通告协议来协调显示和数据。 图 2-1 是模型视图控制器交互的示意图。 图 2-1 MVC 模式 2.1 Model(模型) 模型表示应用的数据及操作这些数据的逻辑方法。任何和整个应用有关的持久性数据都应该放在模型中。对于模型,它所提供的 API不能只针对某一个专门的视图或控制器,应该更一般化以适应不同客户的需求。 一个应用的模型组件是最有价值的软件部分, 模型包含着商业实体以及如何管理访问和修改数据的规则。这些工作在一个特定的场所完成,以维护有效数据的完整性,减少冗余,增强可重用性,这十分重要。 模型必须与那些用

13、作访问业务对象及其相关规则的客户端的具体类型无关,即模型必须模型 视图 控制器 选择视图 用户动作、请求 调用模型 API 查询模型状态 通知视图,模型状态改变 方法调用 事件 厦门大学软件学院本科毕业论文 3 具备分离于某个特 定实例的通用性。因此, 模型 组件不应该意识到是何种类型的客户端或者框架在使用它。 模型具有不同的含义,最普通的含义是表示事件的面貌。模型可以表示一个买卖货物的商店,可以表示一种预测是否会有暴风雪来的方法,或者是标价待售的房屋等。所有的这些例子都以实际概念为基础。创建一个模型的主要目的是帮助理解、描述或者模拟事物如何在真实世界中行动。 2.2 View(视图) 视图将

14、模型的当前状态展示给用户,具体的显示方法由视图负责,因此一个模型可以适用多个不同的视图。在模型状态改变后,通过模型和视图之间的协议,视图得知这种改变并修改自己的显示。对于用户的输入,视图将它们交给控制器处理。 通常意义上来说,视图表示在用户界面中模型的显示,在此,并非一个模型只能有一个视图,事实上,表示一个模型有多种不同的方式。如我们之前所了解的,模型包含持有应用程序状态的业务实体,打个比方来说,视图就是客户端能够用来窥见模型状态的“窗口”,通过不同的“窗口”来观察,获得的透视也就不同。 可以设想由不同类型的客户端(例如一个无线设备),查看完全不同的一系列视图,但是仍然使用相同的模型。只要模型

15、与表示层拥有合适的分离性,在相同的模型上就可以为任意数量的 客户端构建任意数量的视图。 在 MVC 模型中, V 是模型的表示,提供用户交互界面。当模型状态改变时,视图应该得到通知,以便更新视图。 2.3 Controller(控制器) 控制器组件负责检测用户输入,为客户端选择下一个视图。 控制器有助于将模型的表示层与实际的模型分离开来。这种区分将使用户在根据同一个模型开发不同类型的表示层时具有更大的灵活性。 使用控制器这一概念是为应用程序的控制提供一个集中点,在此处所有的客户端请求都可以先进行处理。由于控制器在客户端的输入与模型间扮演着一个中间人的角色,控制器可以为每一个客户端 请求提供一些

16、公用的功能,如安全、日志以及一些其它重要的功能等。 由于所有的请求都是通过控制器来过滤的,视图是与业务操作及其它的视图组件相耦合厦门大学软件学院本科毕业论文 4 的,将哪个视图返回给客户端就完全由控制器来决定,这样做看起来可能并没有带来多少益处,但这样一来就可以使应用程序获得其它方法无法得到的弹性机制。 控制器负责交互和将用户输入的数据导入模型,它还利用用户的输入将应用转向其它视图,一些非持久的临时数据也应该在视图中存取。 2.4 MVC 设计模式小结 采用 MVC 有许多好处,其中一个就是显示、逻辑和数据分开,这样一方面的改变不会影响另一 方面,比如原来用的是 CLI( Command Li

17、ne Interface),后来要改成 GUI( Graphics User Interface),只要了解原来的模型和控制器的接口,然后构造 GUI,把它按过去的协议和模型关联起来就可以了,这样做增加了组件的重用性和灵活性。假设针对某个模型数据开发了一套 View,那么在其它访问该模型数据的地方,完全可以再次使用该套件或将现在的View 组合成一个复合视图。每个单视图有自己和模型的连接协议和自己的响应控制器,这样开发就仅仅变成了简单的组合。其次,可以在不更改视图显示的 情况下,更改控制器,以达到更改视图与用户交互的响应模式的目的。 通常情况下,对于 MVC 模式,有一个事件通知机制在模型改变

18、时通知视图,但对于 Web应用,浏览器通常只保持无状态的连接,因此通知机制不是很容易实现。当然,应用可以执行更多的推操作,将数据推入客户端,但在 Web 应用中,大部分情况下,这样的方法是不可以或根本不可能实现的,因为用户可以随时关闭浏览器而服务器却不知晓,在服务器端管理远程客户端是高消耗的。 对于标准的 Web 应用而言,客户需要向服务器发送另外一个请求来获取模型的变化。比如说,当一个用户在察看网 上商店中一件商品的价格,同时,管理员改变了这件商品的价格,该用户必须刷新页面或购买该商品后才会 发现价格改变了。 MVC 的设计实现并不十分容易 , 理解起来比较容易,但对开发人员的要求比较高。

19、MVC 只是一种基本的设计思想,还需要详细的设计规划。 模型和视图的严格分离可能使得调试困难一些,但比较容易发现错误。经验表明, MVC 由于将应用分为三层,意味着代码文件增多,因此,对于文件的管理需要费点心思。 综合上述, MVC 是构筑软件非常好的基本模式,至少将业务处理与显示分离,强迫将应用分为模型、视图以及控制层 , 使得你 会认真考虑应用的额外复杂性,把这些想法融进到架构中,增加了应用的可拓展性。如果能把握到这一点, MVC 模式会使得你的应用更加强壮,更加有弹性,更加个性化。 厦门大学软件学院本科毕业论文 5 第 3章 GF2000 项目 恒好公司( Good Forever)是厦

20、门的一家贸易公司, GF2000 项目 为该贸易公司提供一个统一的数据平台 ,以加强数据共享 ,提高工作效率 ,为公司决策提高量化数据。以改变该公司现有的以文件级共享为基础、大量手工操作为方法的低效信息共享方式。 该数据管理平台主要涵盖系统管理模块与 数据管理模块。通过系统管理模块,可提供对不 同用户的访问权限控 制。通过数据管理模块,可实现对客户与项目信息、定 单、收汇及出货信息,以及产品与样品信息的实时跟踪与自动化管理。 该数据管理平台可很大程度上加快信息交流速度与信息共享质量,从而提高公司工作效率。通过对该数据平台的设计与开发,有效组织公司的大量数据,实现办公的自动化,继而实现公司信息管

21、理的系统化。 通过对该系统的研究,形成一套针对于中小型的贸易型公司的数据管理平台的开发思路与模式。 开发过程中形成高复用性模块 ,以加速今后类似数据管理平台的开发速度与质量。系统采用 B/S 结构,后台基于 SQL Server 2000 数 据库,前台采用 ASP 开发,完成后的系统将可在浏览器上完成绝大部分的数据显示与操作,另外涉及到需要输出的文档均以文本文件、邮件、 Word 文档或 Excel 文档的形式,方便易用。 根据公司的业务特点与业务流程,系统划分为:产品管理、项目管理、样品管理、定单管理、出货管理、收汇管理、系统管理共七个模块 3.1 产品管理 产品管理是 GF2000 的核

22、心基础模块,系统所有的业务都将基于它而建立。它主要对应的是产品部门的工作,主要包括产品 信息 管理、配件管理,功能分解如图 3-1 所示 。 产品 信息 管理包括:产品类别维护、产品资料维护、 产品目录维护、产品箱规维护。 配件管理包括:配件类别维护、配件资料维护、供应商维护、出库单维护、生产计划单维护、采购建议、价格查询。 厦门大学软件学院本科毕业论文 6 图 3-1 产品管理功能分解 3.2 项目管理 项目管理是 GF2000 的基础业务模块,对应的是业务部门的日常工作。它基于产品管理的 数据,记录与客户的每一次交互信息,主要包括客户管理、项目 信息 管理 , 功能分解如 图3-2 所示。 客户管理包括:客户资料维护、客户联系人维护。 项目 信 息 管理包括:项目信息维护、项目阶段维护、项目产品维护、项目产品版本维护、产品报价维护、报价箱规维护。 产品管理 产品信息管理 配件管理 产品类别维护 产品资料维护 产品目录维护 产品箱规维护 配件类别维护 配件资料维护 供应商维护 出库单维护 生产计划单维护 采购建议 价格查询

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。