MVC 模型-视图-控制器体系结构
2010-10-19 23:18
465 查看
MVC 模型-视图-控制器体系结构
J2EE 是根据一个特定的应用程序结构开发的,这个结构称为 模型-视图-控制器(MVC)。MVC 清楚地将应用程序定义为三个分离的层:
模型:应用程序的数据和业务规则的集合――通常称为应用程序的业务逻辑。
视图:应用程序的用户界面。
控制器:定义了应用程序如何对用户输入或模型层的变化作出反应――通常称为应用逻辑。
MVC 体系结构的优点
J2EE 中没有任何东西强迫您使用 MVC 体系结构来组织应用程序,但是这样做有许多很好的理由。通过定义三层之间的清楚分离,MVC
允许构成每个层的组件之间进行松散耦合。这使得组件具有更高的可重用性和灵活性。例如,假设您的需求之一是在某个 Web
应用程序中对相同数据支持不同类型的视图,因为不同的部门需要某个数据库中相同数据的不同子集。您需要开发特定于每个所需子集的新视图组件。如果视图逻辑
和数据库访问代码是紧密耦合的――ASP 页面就是将数据库访问代码和 HTML
交织在一起,那么每个视图都要包含数据库访问代码。维护重复的代码不仅需要大量的工作,而且可能导致出错。对于这种情形,MVC
体系结构将数据库访问代码作为该模型的一部分,而各种视图组件都可以重用它。
J2EE 组件和 MVC
图 1 显示我们到目前为止所讨论的 J2EE 组件如何映射为 MVC
体系结构。注意,模型和视图之间不存在任何联系。控制器的功能是充当两者之间的中转站。
图 MVC 与 J2EE Web 应用程序
在典型场景中,用户提交一个 HTML 表单,这个表单的目标是一个 servlet。servlet
解析输入的数据并使用模型中的类来调用业务逻辑以满足该请求。然后,servlet 将结果传递给一个 JSP 页面,以便向用户显示这些结果。
J2EE 是根据一个特定的应用程序结构开发的,这个结构称为 模型-视图-控制器(MVC)。MVC 清楚地将应用程序定义为三个分离的层:
模型:应用程序的数据和业务规则的集合――通常称为应用程序的业务逻辑。
视图:应用程序的用户界面。
控制器:定义了应用程序如何对用户输入或模型层的变化作出反应――通常称为应用逻辑。
MVC 体系结构的优点
J2EE 中没有任何东西强迫您使用 MVC 体系结构来组织应用程序,但是这样做有许多很好的理由。通过定义三层之间的清楚分离,MVC
允许构成每个层的组件之间进行松散耦合。这使得组件具有更高的可重用性和灵活性。例如,假设您的需求之一是在某个 Web
应用程序中对相同数据支持不同类型的视图,因为不同的部门需要某个数据库中相同数据的不同子集。您需要开发特定于每个所需子集的新视图组件。如果视图逻辑
和数据库访问代码是紧密耦合的――ASP 页面就是将数据库访问代码和 HTML
交织在一起,那么每个视图都要包含数据库访问代码。维护重复的代码不仅需要大量的工作,而且可能导致出错。对于这种情形,MVC
体系结构将数据库访问代码作为该模型的一部分,而各种视图组件都可以重用它。
J2EE 组件和 MVC
图 1 显示我们到目前为止所讨论的 J2EE 组件如何映射为 MVC
体系结构。注意,模型和视图之间不存在任何联系。控制器的功能是充当两者之间的中转站。
图 MVC 与 J2EE Web 应用程序
在典型场景中,用户提交一个 HTML 表单,这个表单的目标是一个 servlet。servlet
解析输入的数据并使用模型中的类来调用业务逻辑以满足该请求。然后,servlet 将结果传递给一个 JSP 页面,以便向用户显示这些结果。
相关文章推荐
- 模型 - 视图 - 控制器(MVC)详解
- Asp.Net MVC中模型、视图和控制器简述
- ASP.NET MVC教程:理解模型、视图和控制器(3)
- [ASP.NET MVC 5 - 04] 控制器与模型及视图的交互
- ASP.NET中实现模型-视图-控制器(MVC)模式
- Asp.Net MVC(理解模型、视图和控制器) - Part.2
- mvc只控制器,模型,视图的搭建
- ASP.NET MVC教程:理解模型、视图和控制器(4)
- 模型-视图-控制器 (MVC)
- Qt中的MVC (模型/视图结构)
- MVC(Model View Controller)模型-视图-控制器
- Java基础之在窗口中绘图——使用模型/视图体系结构在视图中绘图(Sketcher 1 drawing a 3D rectangle)
- ASP.NET MVC教程:理解模型、视图和控制器(5)(完)
- 模型,视图,控制器(MVC)
- MVC(模型-视图-控制器)
- Asp.Net MVC(理解模型、视图和控制器) - Part.2
- Asp.Net MVC(理解模型、视图和控制器) - Part.2
- C#-MVC基础-模型(Model)、视图(View)和控制器(Controller)
- 模型-视图-控制器(MVC)
- [转载]MVC之父对“模型-视图-控制器”的最初定义