bs构架mvc系统设计模式

bs构架mvc系统设计模式

ID:11671162

大小:38.50 KB

页数:5页

时间:2018-07-13

bs构架mvc系统设计模式_第1页
bs构架mvc系统设计模式_第2页
bs构架mvc系统设计模式_第3页
bs构架mvc系统设计模式_第4页
bs构架mvc系统设计模式_第5页
资源描述:

《bs构架mvc系统设计模式》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、B/S构架MVC系统设计模式收藏一.目的提高代码重用、增加开发速度和减少维护修改量已经成为现软件开发模式中日益提升的需求。框架、模型和接口也就随此孕育而生。MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。使用MVC设计模式能够使得开发人员可以把精力集中在如何解决实际业务问题上。为什么要使用MVC大部分Web应用程序都是用像JSP,ASP,PHP,或者CFML这样的过程化语言来创建的。它们将像数据库查询语句这样的数据层代码和像HTML这样的表示层代码混在一起。经验比较丰富

2、的开发者会将数据从表示层分离开来,但这通常不是很容易做到的,它需要精心的计划和不断的尝试。MVC从根本上强制性的将它们分开。尽管构造MVC应用程序需要一些额外的工作,但是它给我们带来的好处是无庸质疑的。首先,最重要的一点是多个视图能共享一个模型,正如我所提及的,现在需要用越来越多的方式来访问你的应用程序。对此,其中一个解决之道是使用MVC,无论你的用户想要Flash界面或是WAP界面;用一个模型就能处理它们。由于你已经将数据和业务规则从表示层分开,所以你可以最大化的重用你的代码了。由于模型返回的数据没有进行格式化,所以同样的构件能被不同界面使用。例如,很多数据可能用H

3、TML来表示,但是它们也有可能要用MacromediaFlash和WAP来表示。模型也有状态管理和数据持久性处理的功能,例如,基于会话的购物车和电子商务过程也能被Flash网站或者无线联网的应用程序所重用。因为模型是自包含的,并且与控制器和视图相分离,所以很容易改变你的应用程序的数据层和业务规则。如果你想把你的数据库从MySQL移植到Oracle,或者改变你的基于RDBMS数据源到LDAP,只需改变你的模型即可。一旦你正确的实现了模型,不管你的数据来自数据库或是LDAP服务器,视图将会正确的显示它们。由于运用MVC的应用程序的三个部件是相互对立,改变其中一个不会影响其

4、它两个,所以依据这种设计思想你能构造良好的松偶合的构件。对我们来说,控制器的也提供了一个好处,就是可以使用控制器来联接不同的模型和视图去完成用户的需求,这样控制器可以为构造应用程序提供强有力的手段。给定一些可重用的模型和视图,控制器可以根据用户的需求选择模型进行处理,然后选择视图将处理结果显示给用户。二.B/S构架MVC设计模式图无法显示,使用文字简单描述:信息层:关系数据库数据持久化层:DAO模型层:业务对象(BusinessObject)、业务逻辑、业务代理接口、控制器视图层:视图客户层:IE三.设计模式描述根据上图B/S三层构架设计模式,我们把数据库信息层单独放

5、置为底层,数据持久化层、模型层和控制器层视为中间层,视图层为客户端显示操作界面,处于最上层,也是程序直接接受操作层。3.1.数据的持久化持久化意味着通过手工或者其他方式输入到应用中的数据能够在应用结束运行后依然存在。这就需要数据被持久化到数据库或磁盘文件。面向对象的开发方法是当今的主流,但是同时不得不使用关系型数据库,在企业级开发的环境中,对象——系的映射(Object-RelationMapping,简称ORM)也就成为持久化操作的一个重要环节。围绕ORM和持久化数据的访问,在软件领域中发展起来了一种数据访问对象(DataAccessObject,简称DAO)设计模

6、式。对于java应用,可以直接通过JDBC编程来访问数据库,在企业级应用开发中,可以通过JDBC编程来开发自己的DAOAPI,把数据访问操作封装起来,供业务层统一调用。3.2.业务对象业务对象(BusinessObject,简称BO),即是对真实世界的实体的软件抽象。它可以代表业务领域中的人、地点、事物或概念。业务对象包括状态和行为。如果一个类可以作为业务对象,那么它应该具有以下特征:a、包含状态和行为b、代表业务领域的人、地点、事物或概念c、可以重用业务对象可分为三种类型:a、实体业务对象b、过程业务对象c、事件业务对象通过不同类型的业务对象相互组合调用,构成业务逻

7、辑层,是模型层核心部分。3.3.业务代理接口业务代理接口直接访问、组合业务对象和持久化框架,处理实际的业务逻辑,使用业务代理接口,可以让控制器使用这些代理接口,而不必直接和持久化框架交互。这种做法有助于消弱上层web应用和持久化框架之间的关系,提高持久化框架和模型的相对独立性。此外,还需要采用DAO模式来消弱应用的业务逻辑和数据库访问逻辑的关系,当使用持久化框架的时候,DAO模式可以把业务对象和持久化框架分开,当持久化机制发生改变时,这种改变不会对业务对象产生影响。3.4.控制器控制器接受用户的输入并调用模型和视图去完成用户的需求。所以当单击Web页

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。