`
cui09
  • 浏览: 116313 次
  • 性别: Icon_minigender_1
  • 来自: 吉林
最近访客 更多访客>>
社区版块
存档分类
最新评论

用MVC模型引导你的WEB设计思路

阅读更多

用MVC模型引导你的WEB设计思路                                 

 

习惯于过程式的开发,一直向往着面向对象。无奈半路出家人,没有一点内力基础,看了一大堆面向对象的书也只是看得一头雾水。对于MVC的概念也是偶然了解到的,感觉能和WEB开发结合起来让项目面向对象化。以下是我一点点心得。
先介绍一下MVC的概念:
MVC(Model-View-Controller),即把一个应用的输入、输出、处理流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层——模型层、视图层、控制层。
 模型(Model):就是业务流程/状态的处理以及业务规则的制定。即是MVC的主要核心。
 视图(View):代表用户交互界面,也就是Web的HTML界面。
 控制(Controller):可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成用户的请求。

以下以一个简单的留言板作为分析例子。

1)从上面的概念来看,留言板可以切成三部份。
 模型(M):包含 数据库链接、生成数据集、数据库更新操作。
 视图(V):包含 获取模型的数据集,将数据集内填充到各种显示界面内,如(留言板列表,管理控制页面,添加修改删除界面等一切用户看得到的页面。)
 控制(C):包含 数据库更新的数据校验,将更新完毕后的结果转交给视图进行呈现。

2)三部份已经出来,下面是更进一步的细化。
 模型(M)
  数据链接:数据链接参数、链接失败处理。
  数据操作:生成固定格式的数据集、运行单行SQL、解析固定格式的数据集更新数据库(内容包括有:留言记录,管理员帐号,系统设定)。
  文件操作:将文件内部格式封成数据集,并附带读取写入文件操作。(内容包括有:留言板样式设定、版权设定、搜索引擎关键字设定、留言板标题设定)
 视图(V)
    数据显示:根据要求授权给控制器[C]向模型[M]请求数据集,然后根据数据集显示出界面。
    操作结果显示:根据控制返回的数据资料决定显示的提示资料
    具体资料包括有:
      留言添加页:判断留言者是否管理员、判断本次留言是回复还是新建留言。
      留言管理页:批量删除留言、查询留言、管理员帐号管理、系统设定等。
      留言显示页:判断留言是否为管理员专用、判断本留言是否为管理员发布、是否允许回复、是否显示留言者的敏感资料、留言是否需要审核后再显示。

 控制(C)
  数据/文件操作:接收操作资料,校验数据是否符合条件,引用模型的生成数据集类生成指定数据集,然后交给相应的模型操作方法操作,并获取操作结果以预定好的格式转交给视图处理

3)系统基本上细化完毕,下一步就是将以上分析出来的东西封装成Class
  模型(M):
    数据库链接和数据操作可以封成一个Class。
    数据库数据集的结构,可以引用Dictionary控件与数组完成。其间操作也可以封成一个Class具体可以仿造ASP.net中Dataset对象的部份机构。
    文件操作部份封装成一个Class
    文件结构定义可以封成一个Class以方便控制直接引用,然后转交给文件操作Class进行相应的操作。
  视图(V):
    视图部可均是以文件模式出现,也可以将部份代码封装后引用。也可以引用现有的模板类实现代码分离等。
  控制(C):
    数据校验:SQL注入防御处理、日文字符替换处理、特定常用校验正则式,这个是控制器常用的函数,可以封成Class也可以以函数型式存在独立文件,使用时直接引用。
    数据/文件更新操作:由于直接操作,可以避免使用Class,而是以文件模式出现,每个文件处理模型(M)中的某个类。并完成控制(C)的工作。
    视图[V]模型[C]链接器:接收视图[V]要求数据集的请求,将请求转换成模型[M]合适的SQL句,然后交给模型[M]数据集成生器生成数据集,然后返回给视图[V],这个处理比较麻烦,如果没必要作得太严谨的话可以直接使用字段名,并在视图[V]以SQL标准的条件句进向模型[M]请求数据。

 疑:
  视图[V]模型[C]链接器,对这个的设定我还是有点迟疑的。因为在MVC中,V对M的请求中是不需要C的掺和的,但是,这个链接器的操作确实很符合C的概念,所以这里我把它放在了控制器[C]里。或许他可以放至在视图[V]内。毕竟这个是视图[V]的事。这个就看每个人对MVC的理解了。

以上基本完成了留言板的结构分析与类的抽象,有不少的地方比较繁琐,甚至是啰嗦,一个留言板其实是没必要这样,不过,这个例子里作出来的不少Class可以直接使用在其它更大的项目中去,比如控制器[C]中的数据集请求转换器,校验部份、模型[M]中的数据库链接等,之所以遵循MVC模型进行编程不但是为了让程序设计更灵活,最重要一点是可以很快将项目拆开成一小块一小块,然后又将这些小块再折成更小的块,一直折到单个类的某个方法某个属性,等你完成这些小块代码后,那系统也就完成了

分享到:
评论

相关推荐

    MVC模式在WEB开发中的应用

    ##### 3.2 MVC设计思路 在MVC架构中,模型是应用程序的核心,包含了所有业务逻辑和数据操作。视图则用于呈现数据,通常是由前端开发者创建。控制器作为用户界面与模型之间的桥梁,处理用户请求并更新模型或视图。 ...

    计算机硕士毕业论文_基于MVC 设计模式的动态电子政务Web 统计模型

    ### 计算机硕士毕业论文_基于MVC 设计模式的动态电子政务Web 统计模型 #### 一、引言 随着信息技术的发展,电子政务成为政府提高服务质量...这种基于MVC模式的设计思路对于构建现代电子政务系统具有重要的参考价值。

    MvcWeb资源管理系统

    这个项目由开发者用来提升自己在ASP.NET MVC技术上的技能,虽然在设计思路上可能不够成熟,但它依然能为初学者展示ASP.NET MVC的基本概念和实际应用。 **ASP.NET MVC框架** ASP.NET MVC(Model-View-Controller)...

    精通Struts基于MVC的Java Web设计与开发(精品)

    《精通Struts:基于MVC的Java Web设计与开发》是一本由孙卫琴编著的书籍,专门针对Java Web开发中的Struts框架进行了深入的探讨。这本书以其清晰的思路和优美的语言,深受广大Java开发者喜爱,是学习和掌握Struts...

    水果销售商城系统+论文+源码 jsp ssh mvc java web j2ee毕业设计

    中提到的“jsp ssh mvc java web”,进一步强调了系统是使用Java Server Pages(JSP)进行视图层的开发,Struts、Spring和Hibernate组成的SSH框架负责业务逻辑和数据持久化,MVC模式则帮助分离了显示、控制和模型,...

    .NET Web开发之.NET MVC框架介绍

    MVC的引入为.NET Web开发带来了一种新的设计思路,使得开发者能够以更加清晰和模块化的方式来构建应用程序。通过分离数据、逻辑和用户界面,MVC不仅提高了代码的可维护性,还提高了可测试性和可扩展性。在现代Web...

    jsp ssh mvc java web j2ee酒店管理 预订系统+源码论文 毕业设计

    本篇将深入探讨一个基于JSP、SSH(Spring、Struts、Hibernate)框架的MVC模式的Java Web酒店预订系统,以及其在毕业设计中的应用。这个系统采用的技术栈对于学习Java Web开发的学生来说具有极高的参考价值,它涵盖了...

    使用MVC架构实现的网上购书实例

    **MVC架构详解** MVC(Model-View-Controller)是一种广泛...通过分析这些文件,我们可以更深入地了解如何在实际项目中运用MVC架构来构建一个网上购书系统,学习其设计思路和实现方式,从而提升我们的Web开发技能。

    spring webmvc tx等源码二

    本文将深入探讨这两个组件的源码,帮助你理解它们的工作原理和设计思路。 首先,让我们来看看Spring Web MVC。它负责处理HTTP请求,并将其映射到相应的业务逻辑。核心组件包括DispatcherServlet、HandlerMapping、...

    基于mvc的jsp网上商城的毕业设计+开题报告+源码

    在本项目中,开题报告可以帮助读者理解设计的初衷和设计思路,了解项目的整体规划。 **6. 源码分析** 源码是项目的核心部分,包含了控制器、模型和视图的具体实现。通过阅读和分析源码,可以深入理解MVC模式在实际...

    asp.net mvc项目源码

    `51aspx源码必读.txt`可能是关于阅读和理解源码的一些指导或者提示,对于初学者来说,这是一个很好的起点,能帮助他们了解项目的设计思路和最佳实践。`最新Asp.Net源码下载.url`则可能是一个链接,指向更多ASP.NET...

    MVC工厂模式。

    **正文** MVC(Model-View-Controller)工厂模式是一种在Web开发中广泛采用的设计模式,它将应用程序的业务逻辑、数据处理以及用户界面进行了...在实际项目中,这样的设计思路对于构建健壮、可扩展的Web应用至关重要。

    基于MVC架构的Web应用系统设计

    MVC架构是一种广泛应用于Web开发领域的设计模式,它将软件系统分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种设计模式的目的是通过分离关注点来增强代码的可维护性、可测试性和可重用...

    MVC架构设计与经典的三层模型

    MVC(Model-View-Controller)是一种广泛应用于Web应用程序开发的软件设计模式,旨在提高代码的可维护性和可扩展性。它将应用分为三个主要部分:模型(Model)、视图(View)和控制器(Controller)。 1. **模型...

    spring ioc+mvc代码

    在mySpring框架中,我们可以按照上述思路,逐步实现IOC容器和MVC模型。首先,构建一个简单的配置解析器,然后实现bean的实例化和依赖注入。接着,设计Controller的注册和调用机制,以及视图解析过程。最后,将这些...

    mvc入门项目源码

    通过这个“MyFirstMVC”项目,新手可以逐步学习如何创建控制器、定义模型、设计视图布局、配置路由、以及如何使用ASP.NET MVC 4框架进行数据库操作。同时,他们还能了解到如何组织项目结构,以便于代码管理和团队...

    基于MVC模式的Web应用程序结构分析.pdf

    MVC(Model-View-Controller)模式是一种软件设计模式,广泛应用于Web应用程序的开发中,特别是在Java平台上,如JSP/Servlet技术。这种模式将应用程序分为三个主要组件:模型(Model)、视图(View)和控制器...

    外文翻译_Spring的webMVC构架模式.pdf

    Spring的Web MVC构架模式是Spring框架中用于构建Web应用程序的核心组件,其设计思路强调了模块化、松耦合和可扩展性。该模式与其他轻量级应用框架,如Struts和Webwork,有着显著的区别。 1. **模块化设计**: ...

Global site tag (gtag.js) - Google Analytics