MVC设计模式

Controller

Model

View

SpringMVC

1、  实现MVC设计模式的框架

2、  基于springIOC,是spring的一个子模块,不需要整合

核心组件

1、  DispatcherServlet:前置控制器

2、  Handler:处理器,完成具体业务逻辑

3、  HandlerMapping:将请求映射到Handler

4、  HandlerInterceptor:处理器拦截器

5、  HandlerExecutionChain:处理器执行链

6、  HandlerAdapter:处理器适配器

7、  ModelAndView:装载模型数据和视图信息

8、  ViewResolver:视图解析器

流程

1、  请求被DispatcherServlet接收

2、  DispatcherServlet通过HandlerMapping映射到Handler和HandlerInterceptor获得HandlerExecutionChain(Handler和HandlerInterceptor)返回到DispatcherServlet

3、  DispatcherServlet通过HandlerAdapter执行Handler获得ModelAndView返回到DispatcherServlet

4、  DispatcherServlet对返回结果通过ViewResolver进行解析返回填充了模型数据的view响应客户端

使用:

一、开发者需要配置组件搭建框架(XML)

1、基础配置

导入maven依赖:spring-webmvc.jar

在web.XML中配置DispatcherServlet:

1、需要指定初始化参数的springMVC配置文件

  1. <init-param>
  2.  
  3. <param-name>contextConfigLocation</param-name>
  4.  
  5. <param-value>classpath:springmvc.xml</param-value>
  6.  
  7. </init-param>

2、或者使用命名空间,可以改变默认的配置名称,但是必须放在web-inf目录下

  1. <init-param>
  2.  
  3. <param-name>namespace </param-name>
  4.  
  5. <param-value>springXMLName </param-value>
  6.  
  7. </init-param>

3、或者使用默认配置,则必须用[servlet-name].sevlet.xml格式命名

2、XML配置:Controller、HandlerMapping映射

HandlerMapping:

Controller:

3、XML配置:ViewResolver映射

二、开发者需要手动编写Handler和view

Handler:实现controller(MVC的)接口

从页面得到的数据可添加到方法参数中,MVC可自动将参数转化成对应的bean实体

返回数据modelAndView的数据和视图:

addObject和setViewName方法添加进modelAndView

返回string格式的view界面名称:

将数据封装成map集合,

将数据封装成Model对象

View:jsp页面

注解方式配置Controller、HandlerMapping映射

1、  开启注解扫描

<context:component-scan base-pachage=”需要注解扫描的文件目录路径”/>

2、  添加Controller的IOC容器:@Controller

3、  添加mapping映射:@RequestMapping(“handlerName”)

使用filter配置中文乱码监听器

设置访问静态资源

springMVC-基本认识的更多相关文章

  1. 【分享】标准springMVC+mybatis项目maven搭建最精简教程

    文章由来:公司有个实习同学需要做毕业设计,不会搭建环境,我就代劳了,顺便分享给刚入门的小伙伴,我是自学的JAVA,所以我懂的.... (大图直接观看显示很模糊,请在图片上点击右键然后在新窗口打开看) ...

  2. Springmvc数据校验

    步骤一:导入四个jar包 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns=" ...

  3. 为什么做java的web开发我们会使用struts2,springMVC和spring这样的框架?

    今年我一直在思考web开发里的前后端分离的问题,到了现在也颇有点心得了,随着这个问题的深入,再加以现在公司很多web项目的控制层的技术框架由struts2迁移到springMVC,我突然有了一个新的疑 ...

  4. 【SSM框架】Spring + Springmvc + Mybatis 基本框架搭建集成教程

    本文将讲解SSM框架的基本搭建集成,并有一个简单demo案例 说明:1.本文暂未使用maven集成,jar包需要手动导入. 2.本文为基础教程,大神切勿见笑. 3.如果对您学习有帮助,欢迎各种转载,注 ...

  5. 快速搭建springmvc+spring data jpa工程

    一.前言 这里简单讲述一下如何快速使用springmvc和spring data jpa搭建后台开发工程,并提供了一个简单的demo作为参考. 二.创建maven工程 http://www.cnblo ...

  6. redis集成到Springmvc中及使用实例

    redis是现在主流的缓存工具了,因为使用简单.高效且对服务器要求较小,用于大数据量下的缓存 spring也提供了对redis的支持: org.springframework.data.redis.c ...

  7. 流程开发Activiti 与SpringMVC整合实例

    流程(Activiti) 流程是完成一系列有序动作的概述.每一个节点动作的结果将对后面的具体操作步骤产生影响.信息化系统中流程的功能完全等同于纸上办公的层级审批,尤其在oa系统中各类电子流提现较为明显 ...

  8. springMVC学习笔记--知识点总结1

    以下是学习springmvc框架时的笔记整理: 结果跳转方式 1.设置ModelAndView,根据view的名称,和视图渲染器跳转到指定的页面. 比如jsp的视图渲染器是如下配置的: <!-- ...

  9. springMVC初探--环境搭建和第一个HelloWorld简单项目

    注:此篇为学习springMVC时,做的笔记整理. MVC框架要做哪些事情? a,将url映射到java类,或者java类的方法上 b,封装用户提交的数据 c,处理请求->调用相关的业务处理—& ...

  10. springmvc的拦截器

    什么是拦截器                                                         java里的拦截器是动态拦截action调用的对象.它提供了一种机制可以使 ...

随机推荐

  1. 在rails 中返回 zip 文件

    在平日的开发当中我们一般只返回html,json 等等,但是偶尔情况下也会使用到其他文件的返回,比如 pdf ,csv 文件 今天在开发中使用的是将大量的文字返回给用户. ## 知识点 `Tempfi ...

  2. [Eclipse]自动注释功能

    1) 新建一个file时,加上一些注释的方法. window->preference->java->code     styple->code     template 当你选 ...

  3. hystrix应用介绍(四)

    前几章已经讲了hystrix的应用场景,以及如何使用,本章我们针对如何进行hystrix参数配置做一些分析 //异步的执行 @HystrixCommand(groupKey = "testK ...

  4. java web api接口调用

    Web Services 被W3C进行了标准化定义. Web Services 发布到网上,可以公布到某个全局注册表,自动提供服务URL,服务描述.接口调用要求.参数说明以及返回值说明.比如中国气象局 ...

  5. Day3 Form表单

    Day3  Form表单 一.form表单 :提交数据    表单在网页中主要负责数据采集功能,它用<form>标签定义.    用户输入的信息都要包含在form标签中,点击提交后,< ...

  6. css随堂笔记(二)

    css   sub注释 注释不能嵌套 sub生成结构代码快捷 复合选择器 1.后代选择器 语法:选择器1 选择器2 选择器3  { 属性名:属性值 } 2.子代选择器 子代选择器语法: 选择器1> ...

  7. js获取url的参数和值的N种有效方法

    js获取url的参数和值的N种有效方法 function getParameterByName(name) { name = name.replace(/[\[]/, "\\\[" ...

  8. sharepoint2007就地升级2010系列(二)环境概述及升级前准备

    环境介绍:1台2GB的虚机 现在是windows server 2008 sp2 X64 +SQL 2005+SQL2005 sp3+sharepoint2007+sharepoint2007SP2 ...

  9. Java Knowledge series 3

    JVM & Bytecode Abstract & Object Object in Java (1) 所有东西都是对象object.可将对象想象成一种新型变量:它保存着数据,但可要求 ...

  10. android studio gradle统一管理版本

    创建config.gradle ext { android = [ compileSdkVersion : 26, buildToolsVersion : "26.0.2", mi ...