• SpringMVC


    SpringMVC

    初始SpringMVC

    在 Spring 的基本架构中,红色圈起来的 Spring Web MVC ,也就是本系列的主角 SpringMVC,它是属于Spring基本架构里面的一个组成部分,属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面,所以我们在后期和 Spring 进行整合的时候,几乎不需要别的什么配置。

    Spring+MVC=SpringMVC : 在spring的基础上,对MVC思想的一个实现,是一个MVC框架

    SpringMVC: 对servlet做的一个封装,换成controller层

    相对于struts2,SpringMVC和Spring结合的更加完美

    SpringMVC初配置

           1. 复制项目到Test_Shop_SSM,添加一个jar包

    spring-webmvc-4.1.0.RELEASE.jar

           2. 配置web.xml

     

     

    只有在满足地址后缀 .do,才会进入SpringMVC框架

    3. 添加,配置SpringMVC的主配置文件 springmvc-servlet.xml

     

           4. 创建controller包,创建一个普通的类ClientController,添加对应注解

     

           与视图解析器,拼接前置和后置地址为/success.jsp

           5. 修改login.jsp 的登录跳转地址

    地址后加上匹配规则 .do,进入SpringMVC框架

     

    工作流程:

           1. 加载web.xml,读取配置,启动SpringMVC

           2. 发送URL请求,匹配规则*.do,实例化SpringMVC的Servlet对象

           3. 扫描注解路径,寻找标记注解@Controller层

           4. 根据URI请求的地址,匹配方法上的注解@RequestMapping的值

           5. 执行方法

           6. 解析返回值,匹配默认的视图解析器,拼接成一个跳转的URI(默认转发)

    参数收集

           1. 内置对象 HttpServletRequest (了解)

     

    2. 方法参数收集(常用)

     

    前台的key值对应到参数值,就可以获取到value

    3. 方法对象收集  (常用)

     

           3.1 后台执行无参构造方法,创建对象

           3.2 根据前台的key,调用对应的set/get方法完成赋值

    SpringMVC乱码处理

    在web.xml添加Spring过滤,处理所有请求地址,转译字符编码UTF-8

     

    模拟完成SSM框架下登录功能

     

    1.Spring家族体系

    Spring AOP:为Spring容器管理的对象提供了对面向切面编程的支持;

    Spring DAO:该层封装了对数据库的访问,并且处理了其抛出的错误消息,同时还基于AOP模块提供了事务管理;

    Spring ORM:Spring支持多种ORM框架,简化了数据库操作。

    Spring Web :Web 上下文模块建立在应用程序上下文模块之上,为基于 Web 的应用程序提供了上下文。

    Spring MVC :MVC 框架是一个全功能的构建 Web 应用程序的 MVC 实现。通过策略接口,MVC 框架变成为高度可配置的,MVC 容纳了大量视图技术,其中包括 JSP、Velocity、Tiles、iText 和 POI。

     

    2.SpringMVC框架定义

    Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还是 Struts 这样的 Web 框架。通过策略接口,Spring 框架是高度可配置的,而且包含多种视图技术,例如 JavaServer Pages(JSP)技术、Velocity、Tiles、iText 和 POI。Spring MVC 框架并不知道使用的视图,所以不会强迫您只使用 JSP 技术。

    Spring MVC 分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。

    Spring的MVC框架主要由DispatcherServlet、处理器映射、处理器(控制器)、视图解析器、视图组成。

     

    3.SpringMVC执行流程

    首先用户发送请求到前端控制器,前端控制器根据请求信息(如 URL)来决定选择哪一个页面控制器进行处理并把请求委托给它,即以前的控制器的控制逻辑部分;

    页面控制器接收到请求后,进行功能处理,首先需要收集和绑定请求参数到一个对象,这个对象在 Spring Web MVC 中叫命令对象,并进行验证,然后将命令对象委托给业务对象进行处理;处理完毕后返回一个 ModelAndView(模型数据和逻辑视图名);

    前端控制器收回控制权,然后根据返回的逻辑视图名,选择相应的视图进行渲染,并把模型数据传入以便视图渲染;

    前端控制器再次收回控制权,将响应返回给用户

    4.视图解析器

    在开发中,视图通常就是JSP、Velocity 等。Spring 默认提供了多种视图解析

    器,比如,我们可以使用最常用解析器InternalResourceViewResolver 来查找

    JSP视图(与之相对应的视图类为InternalResourceView)。 通常,一- 个视图解

    析器只能查找- - -个或多个特定类型的视图,在遇到Spring 不支持的视图或者我

    们要自定义视图查找规则的情况下,我们就可以通过扩展Spring 来自定义自己

    所需的视图解析器。目前,视图解析器都需要实现接口

    org. springframework.web.servlet.ViewResolver,它包含方法

    resolveViewName,该方法会通过视图名查找并返回Spring 视图对象。

  • 相关阅读:
    技术人生:墨菲定律
    Ioc:Autofac Registration Concepts
    Ioc:autofac lifetime scope.
    Ioc:The basic pattern for integrating Autofac into your application
    Logstash filter 插件之 date
    配置 Elasticsearch 集群
    Linux 命名管道
    Linux 管道
    Golang 入门 : channel(通道)
    Golang 入门 : 竞争条件
  • 原文地址:https://www.cnblogs.com/h-w-b/p/12841307.html
Copyright © 2020-2023  润新知