MVC 是什么?
1. 概述
Spring mvc 框架围绕DispatchServlet 这个核心展开,DispatchServlet 是Spring mvc 的总导演
总策划,它负责截获请求并将其分派给相应的处理器处理。Spring mvc框架包括注解驱动控制器、请求
及响应的信息处理、视图解析、本地化解析、上传文件解析、异常处理以及表单标签绑定等内容。
2. Web.xml文件中要做如下配置:
<context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/xxx-servlet.xml</param-value> </context-param> <listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener> <servlet> <servlet-name>servletname</servlet-name> <servlet-class> org.springframework.web.servlet.DispatcherServlet </servlet-class> <load-on-startup>2</load-on-startup> </servlet>
3. 大概流程
Spring mvc 是基于Model2 实现的框架,所以它的底层的机制也是MVC。在整个框架中DispatcherServlet处于核心的位置,它负责协调和组织不同的组件以完成请求处理并返回响应的工作。和大多数WEB MVC框架一样,Spring MVC 通过一个前端Servlet接收所有的请求,并将具体工作委托给其他组件进处处理,DispatcherServlet就是Spring MVC的前端Servlet.
- 整个过程始于客户端发出一个HTTP请求,WEB应用服务器接收到这个请求,如果匹配DispatcherServlet的请求映射路径(在web.xml中指定),WEB容器将该请求转交给DispatcherServlet处理
- DispatcherServlet接收到这个请求后,将根据请求的信息(包括URL,HTTP方法、请求报文头、请求参数、Cookie等)及HandlerMapping的配置找到处理请求的处理器(Handler).可将HandlerMapping 看成路由控制器,将Handler看成目标主机。注意:Spring MVC 中没有定义一个Handler接口,实际上任何一个Object 都可以成为请求处理器。
- HandlerAdapter 对Handlerf进行封装,再以统一的适配器接口调用Handler.HandlerAdapter是Spring MVC的框架级接口,它用统一的接口对各种Handler方法进行调用。
- 处理器完业务逻辑的处理后将返回一个ModelAndView给DispatcherServlet,ModelAndView包含了视图逻辑名和模型数据信息
- ModelAndView中包含的是“视图逻辑名”而非真正的视图对象,DispatcherServlet借由ViewResolver完逻辑视图名到真正视图对象【视图对象,是什么呢?】的解析工作。
- 当得到真正的视图对象View后,DispatcherServlet就使用这个View对象对ModelAndView中的模型数据进行视图渲染。
- 最终客户端得到的响应消息,可能是一个普通的HTML页面,也可能是一个XML或JSON串,甚至是一张图片或一个PDF文档等不同的媒体形式。
参考:《Spring3.X企业应用开发实战》 陈雄华 林开雄 著 【电子工业出版社】
相关推荐
**Spring MVC 初识** Spring MVC 是 Spring 框架的一个模块,主要负责处理 Web 应用中的模型、视图和控制器(Model-View-Controller)的职责划分,以实现松耦合和可测试性。它是一个轻量级的、灵活的 Web 开发解决...
1. CoreContainer(核心容器):它由spring-core, spring-beans, spring-context, spring-context-support和spring-expression(Spring表达式语言)五个模块组成。其中spring-core和spring-beans模块是Spring框架最...
1. **Spring MVC 架构** - **Model**:模型层负责业务逻辑处理,通常由 Java 类和数据库操作组成。 - **View**:视图层负责数据的展示,如 JSP、HTML 页面等。 - **Controller**:控制器层是模型和视图之间的桥梁...
spring-basic spring核心知识学习 弹簧芯 2015-05-18 ...初识spring aop AOP(注解) 弹簧 mvc 1.第一次Spring MVC 2.Spring MVC 查看JSON | XML | PDF 3.Spring MVC 查看JSON | XML | PDF | 卓越
《Spring Web MVC初识——HelloWorld项目解析》 在IT领域,Spring框架是Java开发中的一个核心组件,尤其是它的Web MVC模块,为构建基于HTTP的Web应用提供了强大的支持。本篇文章将围绕“HelloWorld”项目,带你深入...
Spring框架是Java开发领域非常著名的开源框架,它的初识主要可以分为两个部分:框架的基本概念和Spring框架的设计理念。 首先,从框架的基本概念来看,它是由一系列类和接口组成的集合,这些类和接口协调工作以完成...
【初识Spring】 Spring框架是Java企业级应用开发中的核心框架,它为开发者提供了一个全面的基础设施,用于创建稳定、高性能的应用程序。Spring的核心特性包括依赖注入(Dependency Injection,DI)、面向切面编程...
1. **Spring概述**: Spring最初由Rod Johnson创建,旨在解决企业应用开发的复杂性。它提供了一个分层架构,包括数据访问、控制层、业务服务、事务管理等多个组件,简化了Java EE(Enterprise Edition)应用程序的...
本资源介绍了一个基于Spring MVC框架的Web应用项目,旨在帮助开发者和学习者了解和掌握Spring MVC的核心概念、组件以及如何构建Web应用程序。无论您是初学者还是有经验的开发者,这个资源都将为您提供有关Spring MVC...
【Spring的基本应用】是Java EE企业级应用开发中不可或缺的一部分,尤其在Spring+Spring MVC+MyBatis的组合中,Spring作为基础框架扮演着至关重要的角色。本章内容主要涵盖Spring的核心容器、依赖注入以及Spring的...
- **MVC**:Spring MVC是一个强大的Web MVC框架,提供了模型-视图-控制器架构,便于构建可维护的Web应用。 - **数据访问**:Spring支持多种数据访问技术,包括JDBC、JPA、Hibernate等,提供了模板和回调两种编程...
这个压缩包“初识Java EE经典MVC框架Struts.rar”很可能是为了帮助初学者理解Struts框架的基本概念、架构以及如何在实际项目中应用。 首先,让我们来深入了解一下Struts框架的核心概念: 1. **模型(Model)**:模型...
- 初识Spring Boot:了解Spring Boot的宗旨和基本概念,学习如何快速搭建一个Spring Boot项目。 - 系统要求:熟悉Spring Boot应用的系统要求,包括Java版本、Servlet容器等。 - 安装Spring Boot:学习如何通过...
1. **初识Spring.ppt** - 这一部分通常会介绍Spring的基本概念,包括Spring框架的发展背景、目标和架构。它可能会涵盖Spring的核心模块,如Core Container(核心容器),它由Bean Factory和ApplicationContext组成,...
1. **核心容器**:这是Spring的基础,包括Bean工厂(BeanFactory)和应用上下文(ApplicationContext),负责创建、配置和管理Bean。 2. **数据访问/集成**:提供对各种持久化技术的支持,如JDBC、ORM(Hibernate、...
1. **Spring核心**:学习IoC(控制反转)和DI(依赖注入)的概念,理解Spring容器如何管理对象的生命周期和依赖关系。通过XML、注解和Java配置三种方式来配置Spring。 2. **AOP(面向切面编程)**:了解AOP的基本...
**Struts MVC初识** 在Web开发领域,Model-View-Controller(MVC)模式是一种广泛应用的设计模式,它有助于分离应用程序的不同部分,提高代码的可维护性和可扩展性。Struts MVC是Apache软件基金会下的一个开源框架...
1. **Spring MVC**: Spring Boot 默认使用 Spring MVC 作为 Web 框架,提供模型-视图-控制器架构,支持 RESTful 风格的 API 设计。 2. **Thymeleaf/FreeMarker**: Spring Boot 可以与 Thymeleaf 或 FreeMarker ...
《跟我学Spring3》是一本深入浅出的Spring框架学习指南,...通过阅读这两部分PDF(跟我学spring3(8-13).pdf和跟我学spring3(1-7).pdf),你将能够逐步构建起对Spring框架的全面认识,从而在Java开发领域更上一层楼。