- 浏览: 90415 次
- 性别:
- 来自: 烟台
最新评论
-
daxiaoli123:
1 http://sourceforge.net/projec ...
GCJ让Java程序脱离jre执行 -
zhangtongysu:
楼主 ,那个下载 怎么回事啊。
利用Ant和Eclipse有效地提高部署工作效率
MVC英文即Model-View-Controller,即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层——模型层、视图层、控制层。
视图(View)代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML、XML和Applet。随着应用的复杂性和规模性,界面的处理也变得具有挑战性。一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。业务流程的处理交予模型(Model)处理。比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制和模型。
模型(Model):就是业务流程/状态的处理以及业务规则的制定。业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。业务模型的设计可以说是MVC最主要的核心。目前流行的EJB模型就是一个典型的应用例子,它从应用技术实现的角度对模型做了进一步的划分,以便充分利用现有的组件,但它不能作为应用设计模型的框架。它仅仅告诉你按这种模型设计就可以利用某些技术组件,从而减少了技术上的困难。对一个开发者来说,就可以专注于业务模型的设计。MVC设计模式告诉我们,把应用的模型按一定的规则抽取出来,抽取的层次很重要,这也是判断开发人员是否优秀的设计依据。抽象与具体不能隔得太远,也不能太近。MVC并没有提供模型的设计方法,而只告诉你应该组织管理这些模型,以便于模型的重构和提高重用性。我们可以用对象编程来做比喻,MVC定义了一个顶级类,告诉它的子类你只能做这些,但没法限制你能做这些。这点对编程的开发人员非常重要。
业务模型还有一个很重要的模型那就是数据模型。数据模型主要指实体对象的数据 保存(持续化)。比如将一张订单保存到数据库,从数据库获取订单。我们可以将这个模型单独列出,所有有关数据库的操作只限制在该模型中。
控制(Controller)可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成用户的请求。划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。控制层并不做任何的数据处理。例如,用户点击一个连接,控制层接受请求后, 并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。因此,一个模型可能对应多个视图,一个视图可能对应多个模型。
模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。
视图(View)代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML、XML和Applet。随着应用的复杂性和规模性,界面的处理也变得具有挑战性。一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。业务流程的处理交予模型(Model)处理。比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制和模型。
模型(Model):就是业务流程/状态的处理以及业务规则的制定。业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。业务模型的设计可以说是MVC最主要的核心。目前流行的EJB模型就是一个典型的应用例子,它从应用技术实现的角度对模型做了进一步的划分,以便充分利用现有的组件,但它不能作为应用设计模型的框架。它仅仅告诉你按这种模型设计就可以利用某些技术组件,从而减少了技术上的困难。对一个开发者来说,就可以专注于业务模型的设计。MVC设计模式告诉我们,把应用的模型按一定的规则抽取出来,抽取的层次很重要,这也是判断开发人员是否优秀的设计依据。抽象与具体不能隔得太远,也不能太近。MVC并没有提供模型的设计方法,而只告诉你应该组织管理这些模型,以便于模型的重构和提高重用性。我们可以用对象编程来做比喻,MVC定义了一个顶级类,告诉它的子类你只能做这些,但没法限制你能做这些。这点对编程的开发人员非常重要。
业务模型还有一个很重要的模型那就是数据模型。数据模型主要指实体对象的数据 保存(持续化)。比如将一张订单保存到数据库,从数据库获取订单。我们可以将这个模型单独列出,所有有关数据库的操作只限制在该模型中。
控制(Controller)可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成用户的请求。划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。控制层并不做任何的数据处理。例如,用户点击一个连接,控制层接受请求后, 并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。因此,一个模型可能对应多个视图,一个视图可能对应多个模型。
模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。
发表评论
-
调试MAVEN项目appfuse-light-struts2-spring-jdbc-1.8的问题
2008-03-07 16:31 2284出现问题: Project appfuse-light-str ... -
当前Java软件开发中几种认识误区(转)
2008-03-01 22:11 968软件的生命性 软件是有生命的,这可能是老调重弹了,但是因 ... -
给servlet写单元测试的总结(转)
2008-02-19 11:19 3544servlet的测试一般来说需要容器的支持,不是像通常的jav ... -
取得参数的几中形式
2008-02-18 12:54 881java -DSTOP.PORT=8080 -DSTOP.KE ... -
正则表达式
2008-02-18 12:34 899目录 本文目标 如何使 ... -
关于Java中类在构造对象时的初始化步骤详解
2008-02-18 12:17 2098很多人在学习Java的过程 ... -
Java连接各种数据库的实例
2008-02-18 12:13 1165一、jsp连接Oracle8/8i/9i数据库(用thin模式 ... -
为什么要使用接口编程(转)
2008-02-17 21:42 1283看了接口编程这篇文章, ... -
JAVA中浅复制与深复制
2008-02-17 21:38 7191.浅复制与深复制概念 ⑴浅复制(浅克隆) 被复制对象的所有变 ... -
短信网关发送部分源代码
2008-02-17 21:37 1214package com.etonenet.iiie.sdk; ... -
appfuse结合eclipse开发流程
2008-02-17 21:33 1218Appfuse应用的核心在于ant ... -
使用Antlr和JfreeChart实现项目源代码行数计算图表
2008-02-17 21:30 1541Antlr的功能在我的其他文章里提到了就不多说了,JFreeC ... -
使用ANT协助开发java项目
2008-02-17 21:29 894ANT是Apache的开源项目,目前在java的项目开发中被广 ... -
利用Ant和Eclipse有效地提高部署工作效率
2008-02-17 21:26 1265本文主要介绍 Ant 在多 ... -
使用开源软件 Mantis 实施缺陷跟踪的成功实践
2008-02-17 21:22 1697内容摘要 中国开源 注:当前Mantis稳定发布版本为1.0. ... -
开源缺陷跟踪系统mantis安装指南
2008-02-17 21:14 18861. 简介 mantis(螳螂)是一个基于php/MySQL/ ... -
无所不能的“蚂蚁”-Ant(转)
2008-02-17 21:12 3231说他无所不能,好像有点夸张,但是用过Ant之后,感觉真的是只有 ... -
Java华为面试题
2008-02-17 21:08 1469第一部分:选择题 QUESTION NO: 1 1、publi ... -
java中读取Properties文件
2008-02-17 21:06 906ResourceBundle resourceBundle = ... -
Java范型
2008-02-17 21:04 1536从jdk1.5开始,Java中开始 ...
相关推荐
文章基于MVC设计思想,提出了对Java实验案例进行优化的方案,并对其实施过程和特色进行了详细分析。 MVC设计思想中,模型层主要负责与业务相关的数据处理和数据持久化;视图层则负责展示用户界面;控制器层作为模型...
基于MVC设计思想和QT开发的五子棋游戏源码+项目说明(支持双人模式和人机模式).zip基于MVC设计思想和QT开发的五子棋游戏源码+项目说明(支持双人模式和人机模式).zip基于MVC设计思想和QT开发的五子棋游戏源码+项目...
一、为什么:要分层 使软件具有结构性,便于开发、维护和管理。 将不同功能模块独立,在需要替换某一模块时不需要改动其他模块,方便代码的复用、替换 二、层与层耦合的概念,利用工厂类解耦 ...
【JavaWeb+MVC设计思想的一款商城网站】项目是一个典型的基于Java技术栈的电商系统,其核心设计理念是采用MVC(Model-View-Controller)架构模式。MVC是一种广泛应用于Web应用开发的设计模式,旨在提高代码的可维护...
**基于MVC设计思想的Java实验案例优化** 在软件开发领域,MVC(Model-View-Controller)设计模式是一种广泛采用的架构模式,尤其在Web应用程序中。它将应用程序的业务逻辑、用户界面和控制逻辑分离,使得各部分职责...
在这个“asp.net mvc 设计思想的练习”中,我们将深入探讨如何运用这种模式来实现一个页面表单的值传递。 首先,我们来看Model层。在ASP.NET MVC中,Model是应用程序的核心,包含了所有业务逻辑和数据模型。在这个...
### MVC设计思想详解 #### 一、MVC模式概述 MVC(Model-View-Controller)模式作为一种广泛接受的设计模式,被众多IT厂商和开发者所推崇。它最初并不是专为Web应用设计的,而是适用于多种类型的应用程序。MVC模式...
**MVC设计模式** MVC是一种软件设计模式,常用于创建可维护性和可扩展性高的Web应用程序。它将应用逻辑分为三个主要部分: 1. **Model(模型)**:负责处理业务逻辑和数据管理。在邮件系统中,模型可能包含处理...
ASP.NET MVC是一个强大...通过创建和修改控制器、模型、视图以及应用过滤器,你将更深入地理解ASP.NET MVC的设计思想和最佳实践。同时,这个项目也提供了一个良好的学习平台,帮助你提升在Web应用开发领域的专业技能。
MVC思想 Model(模型)、View(视图)和Controller(控制器) MVC的优点 MVC的缺点
mvc设计思想将一个应用的输入、处理、输出流程按照model、view、controller的方式进行分离,这样一个应用被分成三个层——模型层、视图层、控制层。 视图(view)代表用户交互界面,对于web应用来说,可以概括为...
【标题】:MVC设计模式在用户登录功能中的应用 【描述】:MVC(Model-View-Controller)设计模式是一种广泛应用于Web开发中的架构模式,它将应用程序分为三个主要部分,模型(Model)、视图(View)和控制器...
**JavaWeb框架MVC设计思想详解** MVC(Model-View-Controller)设计模式是一种广泛应用于Web应用开发中的架构模式,旨在分离业务逻辑、数据处理和用户界面展示,以提高软件的可维护性和可扩展性。在JavaWeb开发中,...
主要包括MVC的设计思想、实现和原理,以及和其他人的理解。 一、MVC设计思想 二、MVC设计模式的实现 三、MVC设计模式的扩展 四、MVC的优点 五、MVC的不足
MVC是一种广泛应用于Web开发的设计模式,它将应用程序的业务逻辑、数据处理和用户界面分离,使得代码更易于维护和扩展。下面,我们分别从模型(Model)、视图(View)和控制器(Controller)三个层面来详细讲解这个...
#### MVC设计思想详解 MVC设计模式的核心理念在于将应用程序划分为三个相互独立的部分:模型(Model)、视图(View)和控制器(Controller)。这样的划分有助于提高代码的复用性、可维护性和扩展性,同时也便于团队...
2. **MVC设计思想**: - **MVC概论**:MVC模式将应用分为模型(Model)、视图(View)和控制器(Controller)三个部分,以实现数据处理与用户界面的分离。 - **M组件**:模型负责业务逻辑和数据管理,是系统的核心...
#### 二、MVC设计思想 MVC是一种软件架构模式,用于将应用程序逻辑组织成三个核心组件:模型(Model)、视图(View)和控制器(Controller)。 - **模型(Model)**:代表数据和业务逻辑,负责存储和处理数据。 - **视图...
MVC 模式的主要思想是将应用程序分离成三个相互独立的部分,分别是 Model、View 和 Controller。Model 负责存储和管理数据,View 负责显示数据,Controller 负责处理用户输入和业务逻辑。 MVC 模式的优点 MVC 模式...