今天收集整理的:
M-model V-view C-control
经典的三层结构:
数据层、表示层、业务层、
数据层:负责存放持久性(po)业务数据的持久化存储系统
业务层:提供商业逻辑服务的应用程序组件
表示层:提供数据输入、体验与数据呈现的应用程序组件,就是与用户打交道的UI界面(GUI,Web页面)
特征:
1.每个层由一组相关的类或组件构成,共同完成特定的功能
2.层与层之间存在自上而下的依赖关系,即上层组件会访问下层组件的API,而
下层组件不应该依赖上层组件
3.每个层对上层公开接口,封装实现细节。当某一层的实现发生变化,只要他的APi不变,
就不会影响其他层。
经典的四层结构:
表示层:
业务层:
业务逻辑层负责完成应用程序的逻辑功能,包括调用持久层完成实体对象的存取,安全检查,
事务控制
持久层:封装了业务数据的访问细节,为业务层提供面向对象的API.
数据层:
优点:
可维护性:修改某一层的代码,不会影响其他层的代码
可重用性:下层的代码可以被不同的上层代码重用
可扩展性:为软件系统添加新的功能更加容易
可管理型:可以将工作分解给不同的开发小组
缺点:
不适合开发简单的软件系统
增加了调试的困难
对软件设计人员的要求比较高--要注意降低层与层之间的依赖
mvc的处理过程:
首先控制器接受用户的请求,并决定应该调用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,最后控制器用相应的视图格式化模型返回的数据,并通过视图呈现给用户.
Dao模式:
Dao模式的主要目标:
将数据存取逻辑封装成一个对象(DAO对象),对于业务层组件来说,DAO对象是一个"与数据来源无关的数据存取接口"。当数据来源必须更换时,只要改写DAO对象,而不会影响到业务层组件的使用
优点:
1.降低业务层组件与数据来源的耦合
2.数据存取逻辑被封装在DAO对象中,可以降低程序开发的困难度.
DAO模式的实现至少需要一下三部分:
DAO接口:用来公开类所提供的功能,即声明本类提供的所有数据库操作方法
DAO接口的实现类:根据具体的数据源实现DAO接口中所声明的方法.
DAO工厂类:用来产生DAO接口实现类的实例.
框架:
框架就是一组相互协作的类,对于特定的一类软件,框架构成了一种可重用的设计
软件框架:
项目软件开发过程中提取特定领域软件的共性部分形成的体系结构,不同领域的软件项目有着不同的框架类型,框架的作用在于:由于提取了特定领域软件的共性部分,因此在领域内新项目的开发过程中代码不需要从头编写,只需要在框架的基础上进行一些开发和调整便可满足要求,对于开发过程而言,这样做会提高软件的质量,降低成本,缩短开发时间,使得开发越来越轻松. 框架构成了通用的、具有一般的系统主体部分,二次开发人员只想做填空题一样,根据具体业务,完成特定系统中与众不同的特殊部分
框架与架构之间的关系:
框架不是构架,体系结构确定了系统整体结构、层次划分,不同部分之间的协作等设计考虑。框架比架构更具体,更偏重于技术涉嫌,确定框架后,软件体系结构也随之确定,而对于同一软件体系结构(比如Web开发中的MVC),可以通过多种框架来实现
框架与设计模式之间的关系:
设计模式与框架在软件设计中是两个不同的研究领域,设计模式研究的是一个设计问题的解决方法,一个模式可应用于不同的框架和被不同的语言所实现,而框架则是一个应用的体系结构,是一种或多种设计模式和代码的混合体虽然他们有所不同,但却共同致力于使人们的设计被重用,在思想上存在统一性的特点,因而设计模式的思想可以在框架设计中进行应用.
框架和设计模式存在着显著的区别,主要表现在二者提供的内容和致力应用的领域:
1,从应用领域上分,框架给出的是整个应用的体系结构,而设计模式则给出了单一设计问题的解决方案,并且这个方案可以在不同的应用程序或者框架中进行应用.
2,从内容上分,设计模式是一个单纯的设计,这个设计可以被不同语音以不同方式来实现,而框架则是设计和代码的一个混合体,编程者可以用各种方式对框架行扩展进而形成完整的不同的应用.
3,设计模式比框架更容易移植,框架一旦设计成型,但是以其为基础进行应用的开发显然是要受制于框架的实现环境.
------------------------------------------------------------------
主要是框架和设计模式的关系吧,以前知道框架,也知道mvc,可是不知道两个有什么关系.
我的理解是框架可以表现成MVC的,比如SSH,而mvc中也可以用框架,比如Hibernate用于模块层.两个是不分家的。非要说区别,我觉得就是MVC是一个设计模式,抽象的,还没具体实现的。而框架确实货真价实的.
拿小说举例子,孙悟空用委派气功的时候,憋气就是model,创建气蛋,向前推出气蛋,就是control,放出气蛋后,就是view。
在孙悟空放出气蛋的过程中,比如憋气过程,就可以用Hibernate的,
看过一部玄幻小说,说人体内有很多很多空间的,要懂得利用自身,才能走神之路.
正如孙悟空的体内也有很多空间的,在孙悟空憋气的过程中,体内的小空间又在进行多少个mvc啊,
....
相关推荐
**MVC设计模式详解** MVC(Model-View-Controller)设计模式是一种广泛应用于软件开发,尤其是Web应用程序中的架构模式。它将应用程序分为三个主要组件:模型(Model)、视图(View)和控制器(Controller),以此...
Java 中 MVC 设计模式 MVC 设计模式是软件架构中的一种经典设计模式,广泛应用于 Java Web 开发中。MVC 模式将应用程序分为三个主要部分:Model(模型)、View(视图)和 Controller(控制器),每个部分都有其特定...
mvc设计模式详解 mvc设计模式是一种广泛流行的软件设计模式,早在70年代,IBM就推出了Sanfronscisico项目计划,其实就是mvc设计模式的研究。mvc模式在j2ee平台上非常流行,也是广大java开发者非常感兴趣的设计模型...
**MVC设计模式详解** **一、MVC模式概述** MVC(Model-View-Controller)设计模式是一种软件设计架构模式,广泛应用于Web应用开发,主要用于分离应用程序的业务逻辑、用户界面和数据处理。该模式将应用程序分为三...
### MVC设计模式介绍与详细讲解 #### 一、MVC设计模式概述 MVC(Model-View-Controller)设计模式是一种广泛应用于软件工程中的架构模式,尤其在Web应用开发领域非常常见。它将应用程序分为三个核心组件:模型...
**Java Web中的MVC设计模式** MVC(Model-View-Controller)设计模式是一种广泛应用于Web应用程序开发的架构模式,它的主要目标是将业务逻辑、数据处理和用户界面分离,从而提高代码的可维护性和可扩展性。在Java ...
**MVC设计模式详解** **一、什么是MVC设计模式** MVC,即Model-View-Controller(模型-视图-控制器)设计模式,是一种在软件工程中广泛应用于构建用户界面的架构模式。它将应用程序的数据处理、业务逻辑与用户界面...
**MVC设计模式详解** **一、MVC模式概述** MVC(Model-View-Controller)设计模式是一种软件设计架构模式,广泛应用于Web应用程序开发,主要用于分离应用程序的业务逻辑、用户界面和数据处理。该模式将应用分为三...
总的来说,理解和掌握MVC设计模式对于任何Java Web开发者来说都是至关重要的,它能够帮助我们构建更加健壮、可维护的Web应用程序。通过学习“jsp的MVC设计模式”教程源码,你可以更深入地了解这一模式,并将其应用到...
### MVC设计模式概念及优缺点 #### 一、MVC设计模式的概念 MVC(Model-View-Controller)设计模式是一种广泛应用于软件工程中的架构模式,尤其在Web开发领域非常流行。该模式的核心理念在于将应用程序划分为三个...
### MVC设计模式详解 #### 一、MVC模式的起源 MVC模式即“模型-视图-控制器”模式(Model-View-Controller),这一概念最早由Trygve Reenskaug于1978年提出[1]。该模式最初是在施乐帕罗奥多研究中心(Xerox PARC)为...
**MVC设计模式详解及其在Android中的应用** MVC(Model-View-Controller)设计模式是一种广泛用于软件工程,特别是Web应用程序开发的经典架构模式。它将应用程序的不同组件划分为三个主要部分,以实现职责分离,...
让你对MVC设计模式有一个更加深刻的认识,深入浅出的搞明白MVC
### J2EE平台上MVC设计模式的研究与实现 #### 概述 在现代软件开发,尤其是在Web应用领域,设计模式的运用已经成为提升软件质量和开发效率的关键。其中,MVC(Model-View-Controller)设计模式因其强大的组织能力...
**MVC设计模式详解及其在Android应用中的实践** **一、MVC设计模式介绍** MVC(Model-View-Controller)是一种广泛应用于软件工程,尤其是Web应用开发中的设计模式。它将应用程序分为三个核心组件:模型(Model)...
MVC设计模式云盘分享JAVA课程资源。MVC设计模式云盘分享
【MVC设计模式详解】 MVC(Model-View-Controller)设计模式是由Trygve Reenskaug在SmallTalk-80环境中首次提出的,后来成为众多交互和界面系统设计的基础,包括Microsoft的MFC(Microsoft Foundation Classes)...
在实际应用中,许多Web框架如ASP.NET MVC、Ruby on Rails、Spring MVC等都采用了MVC设计模式。例如,书shop应用可能使用MVC来实现用户浏览书籍、添加到购物车、结算等功能: - **模型**:包含书籍的信息(ID、标题...