Spring MVC - 相关内容1

目录

一、SpringMVC概述

二、SpringMVC运行原理

三、环境搭建

1.引入依赖

2.springmvc配置文件

3.web.xml配置

4.控制器基本开发

四、SpringMVC中的跳转


一、SpringMVC概述

Spring MVC是在使用Spring进行WEB开发时的轻量级控制器框架。

  • 可以和Spring框架无缝整合(SpringMVC无法单独使用,所以一开始就是一个SS整合【Spring+SpringMVC】)

  • 运行效率远高于Struts2框架(主要原因之一是SpringMVC的Controller是单例的而Struts2的Action不是单例的)

  • 注解式开发可以更高效。

二、SpringMVC运行原理

Struts2 与 SpringMVC 对比

Spring MVC - 相关内容1_第1张图片

 Spring MVC - 相关内容1_第2张图片

 # 简要步骤分析
1. 请求被DispatcherServlet接收。
2. DispatcherServlet使用RequestMappingHandlerMapping对象来把请求路径对应到某个Controller方法上。
3. DispatcherServlet使用RequestMappingHandlerAdapter对象来对请求参数进行解析,也传入相应的Controller方法中。
4. 根据Controller的不同返回值做不同处理,如果返回的是“页面逻辑名”(也可以称为“视图逻辑名”),则会交给InternalResourceViewResolver对象进行进一步处理。

三、环境搭建

1.引入依赖


    org.springframework
    spring-core
    4.3.2.RELEASE


    org.springframework
    spring-context
    4.3.2.RELEASE


    org.springframework
    spring-context-support
    4.3.2.RELEASE


    org.springframework
    spring-jdbc
    4.3.2.RELEASE


    org.springframework
    spring-aop
    4.3.2.RELEASE


    org.springframework
    spring-beans
    4.3.2.RELEASE


    org.springframework
    spring-expression
    4.3.2.RELEASE


    org.springframework
    spring-aspects
    4.3.2.RELEASE


    org.springframework
    spring-web
    4.3.2.RELEASE



    org.springframework
    spring-webmvc
    4.3.2.RELEASE



    javax.servlet
    servlet-api
    2.5
    provided



    javax.servlet
    jstl
    1.2

2.springmvc配置文件

旧版本传统开发方式(了解即可,功能较少,不推荐使用):手动注册理器映射器、处理器适配器和视图解析器(SpringMVC三大组件)。

Spring MVC - 相关内容1_第3张图片

 新版本标准开发方式(练环境搭建只练这个就行):使用mvc命名空间的注解驱动注册处理器映射器和处理器适配器,然后手动注册视图解析器。

Spring MVC - 相关内容1_第4张图片

3.web.xml配置

Spring MVC - 相关内容1_第5张图片

4.控制器基本开发

Spring MVC - 相关内容1_第6张图片

 另外,@RequestMapping还支持以下写法:

Spring MVC - 相关内容1_第7张图片

@RequestMapping@GetMapping@PostMapping@PutMapping@DeleteMapping的value属性值为访问路径。

@RequestMapping只做路径匹配,其他的会进行路径和请求方式的双重匹配(会在后面的课程详细讲)。

无论以何种形式书写@XxxMapping的value属性值,Controller方法的访问路径永远是类的访问路径加方法的访问路径,访问路径一定是/开头

四、SpringMVC中的跳转

这一部分需要彻底记住!!!

  • Controller跳转到JSP

    • forward:return "页面逻辑名"

    • redirect:return "redirect:/xxx.jsp"(redirect不会经过视图解析器,jsp路径要写全)

  • Controller跳转到Controller(无论被跳转到的Controller在什么位置,路径要写全)

    • forward:return "forward:/a/b"

    • redirect:return "redirect:/a/b"

如果要使用request作用域携带数据,必须是forward跳转。当A和B两个业务没有直接关系时,A跳转到B多数情况下是redirect。


 

你可能感兴趣的:(java,spring,mvc,java)