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 对比

 

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

三、环境搭建

1.引入依赖

<!--spring相关-->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>4.3.2.RELEASE</version>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>4.3.2.RELEASE</version>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context-support</artifactId>
    <version>4.3.2.RELEASE</version>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-jdbc</artifactId>
    <version>4.3.2.RELEASE</version>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-aop</artifactId>
    <version>4.3.2.RELEASE</version>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-beans</artifactId>
    <version>4.3.2.RELEASE</version>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-expression</artifactId>
    <version>4.3.2.RELEASE</version>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-aspects</artifactId>
    <version>4.3.2.RELEASE</version>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-web</artifactId>
    <version>4.3.2.RELEASE</version>
</dependency>
<!--springmvc,要和spring的版本保持一致-->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>4.3.2.RELEASE</version>
</dependency>
<!--JavaEE-->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>servlet-api</artifactId>
    <version>2.5</version>
    <scope>provided</scope>
</dependency>
<!--jstl-->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>jstl</artifactId>
    <version>1.2</version>
</dependency>

2.springmvc配置文件

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

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

3.web.xml配置

4.控制器基本开发

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

@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。


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值