`
藝之憾
  • 浏览: 9885 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论

MVC架构理解 && struts是如何实现MVC的

阅读更多
    关于标题上的内容,网上已经有很多人讨论过,我在此借鉴各位前辈的文章,查看相关技术文档,加上自己的一些观点,总结一下,希望的大家有所帮助,有不妥的地方请多多指教。
   -------- MVC (Model -- View -- Controller) ----------------
   Model:模型表示业务逻辑和业务规则等,在MVC的三个部件中拥有最多的处理任务。模型接受视图请求的数据,并返回最终的处理结果。业务模型的设计可以说是MVC最主要的核心。
    View:视图是用户交互界面。MVC模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,不包括业务流程的处理。
    Controller:控制器,接受用户的输入并调用模型和视图去完成用户的需求。
   
    MVC的优点是有多个视图对应一个模型的能力,且因为分为三层,有时改变其中一层就能满足应用的改变。
  
   -------- struts是如何实现MVC的 ------------------------------
   Model:The Model portion of an MVC-based system can be often be divided into two major subsystems -- the internal state of the system and the actions that can be taken to change that state. (from apache software foundation)
         Model是由Action和ActionForm等构成。Action对象封装了具体的处理逻辑,调用业务逻辑模块,可以用JavaBean和EJB等组件技术来处理数据库的访问,并且把响应提交到合适的View组件中。

    View:The View portion of a Struts-based application is most often constructed using JavaServer Pages (JSP) technology and Presentation Components. (from apache software foundation)
         View部分是通过JSP技术实现的。Struts还提供了自定义的标记库,通过使用这些自定义标记创建的JSP表单,可以实现和Model部分中的ActionForm的映射,完成对用户数据的封装。

     Controller: ActionServlet and ActionMapping 
         Controller功能由ActionServlet和ActionMapping对象构成,核心是ActionServlet,它用来接受客户端的请求。ActionServlet包括一组基于配置的ActionMapping对象,每个ActionMapping对象实现了一个请求到一个具体的Model部分中Action处理器对象之间的映射。
     之前本人一直把action当成Controller的一部分,实在汗颜..
1
3
分享到:
评论

相关推荐

    struts MVC 架构实例(图书管理系统)

    Struts MVC架构是一种广泛应用于Java Web开发中的开源框架,它基于Model-View-Controller(模型-视图-控制器)设计模式,旨在简化Web应用程序...这个实例不仅帮助开发者理解Struts MVC架构,还提供了实践该框架的机会。

    JSP+Struts+JSTL技术的MVC架构

    JSP(JavaServer Pages)、Struts和JSTL(JavaServer Pages Standard Tag Library)是实现MVC架构的常见技术栈,它们共同为开发者提供了一套强大的工具来构建高效的企业级应用。 **JSP(JavaServer Pages)** 是一...

    基于MVC架构的购物车

    **基于MVC架构的购物车**是一个典型的Web应用程序设计,它采用了Model-View-Controller(模型-视图-控制器)模式来组织代码,以实现业务逻辑与用户界面的分离。在这样的架构中,模型负责处理数据和业务逻辑,视图...

    运用JSP+Struts+JSTL技术的MVC架构项目实例源码.rar

    这个项目实例适合初学者学习和理解MVC架构以及JSP、Struts和JSTL的结合使用,同时也为有经验的开发者提供了参考模板,可以快速构建类似的Web应用程序。通过研究和实践,你可以深入了解MVC如何工作,以及如何利用这些...

    重构mvc实现struts框架

    **标题解析:** "重构mvc实现struts框架" 这个标题表明了我们要探讨的主题是关于软件开发中的重构过程,特别关注的是如何从一个简单的MVC(Model-View-Controller)模型出发,逐步演进到实现Struts框架的初步形态。...

    Struts开发指南之MVC架构.doc

    Struts本质上是在Model 2的基础上进一步完善了MVC架构,它采用了单一的中心控制器,通过XML定制URL映射,使用Action来处理业务逻辑,从而提供了一种更为统一和简洁的MVC实现方案。 Struts框架自2001年7月正式发布...

    java学生信息管理系统MVC架构

    实现Java MVC架构,开发者通常会使用Spring Framework或Struts等成熟的Web开发框架。这些框架提供了MVC模式的实现,简化了开发过程,比如Spring MVC提供了依赖注入、AOP(面向切面编程)等特性,使得代码更加模块化...

    Struts 2 自定义MVC 框架

    自定义Struts 2 MVC框架的过程有助于深入理解其工作原理,从而更好地应用和优化项目。 首先,我们来详细探讨Struts 2的核心组件和它们的角色: 1. **模型(Model)**:模型是应用的核心,负责处理业务逻辑和数据。在...

    JSP源码——Struts+Hibernate实现MVC_strutsmvc.zip

    这个压缩包“JSP源码——Struts+Hibernate实现MVC_strutsmvc.zip”显然包含了使用这两种技术构建的MVC应用的源代码。下面将详细阐述Struts和Hibernate的核心概念以及它们如何协同工作。 **Struts框架**: 1. **MVC...

    MVC原理(struts框架详解).

    MVC原理(struts框架详解), Struts 质上就是在Model2的基础上实现的一个MVC架构。它只有一个中心控制器,他采用XML定制转向的URL。采用Action来处理逻辑

    Web编程(Java )-基于MVC架构的Web开发.doc

    通过这个实验,学生可以深入理解MVC架构的工作原理,以及如何在Java Web开发中实现用户交互和数据管理。同时,也能学习到如何使用Servlet和JSP来构建动态Web应用,以及如何进行简单的数据验证和错误处理。

    java mvc架构的程序

    总的来说,Java MVC架构是Java Web开发中的基石,而Struts2则提供了一套成熟且灵活的实现方式。对于初学者,深入研究这一领域不仅可以提高编程技能,也有助于理解Web应用的整体架构和开发流程。

    MVC架构,struts详细配置,多个struts配置文件,Action的调用方式

    Struts2是一个基于MVC(Model-View-Controller)架构的Java Web框架,它旨在简化开发过程并提供可扩展性。MVC模式是软件工程中的一种设计模式,它将应用程序的逻辑分成了三个主要部分:模型(Model)负责业务逻辑,...

    Struts1 MVC实例

    Struts1是一个经典的Java Web开发框架,它遵循MVC(Model-View-Controller)设计模式,使得开发者可以更有序地组织代码,提高开发...在实际开发中,理解并熟练运用MVC模式能够帮助你构建更加清晰、易于维护的项目架构。

    Struts2的mvc架构

    ### Struts2的MVC架构详解 #### 一、Struts2概述 Struts2是一个基于Java的企业级Web应用框架,它遵循了经典的MVC(Model-View-Controller)设计模式,有效地分离了数据处理(模型)、用户界面(视图)和业务逻辑...

    Struts+Hibernate实现MVC_strutsmvc.rar

    "Struts+Hibernate实现MVC_strutsmvc.rar"可能包含一个示例项目,其中包含了上述所有组件。这个项目可能包括了struts-config.xml、hibernate.cfg.xml、Action类、DAO类、实体类、JSP页面以及其他相关配置文件。解压...

    Struts+Hibernate实现MVC-strutsmvc.zip

    在MVC架构中,Hibernate作为Model层,处理数据的存储和检索。 在这个项目中,`strutsmvc.zip`压缩包可能包含了以下关键组成部分: 1. **源代码**:Java源文件,包括Action类(处理用户请求)、ActionForm(封装...

Global site tag (gtag.js) - Google Analytics