这是我参与8月更文挑战的第5天,活动详情查看: 8月更文挑战”
✔上一篇Spring Boot系列文章 我们说到了 Spring Boot 事务支持,今天来说说# Spring Boot下的Spring MVC
Spring Boot就是一个大框架包含了许许多多的东西,其中Spring就是最核心的内容之一,当然就包含SpringMVC。
SpringMVC是Spring处理web层请求的一个模块,因此他们的关系大概就是这样:SpringMVC < Spring <Spring Boot。
SpringBoot与SpringMVC的关系
Spring 框架就像一个家族,有众多衍生产品,例如 boot、security、jpa等等,但他们的基础都是Spring 的 ioc和 aop ioc 提供了依赖注入的容器 aop ,解决了面向横切面的编程,然后在此两者的基础上实现了其他延伸产品的高级功能。
Spring MVC是基于 Servlet 的一个MVC框架,主要解决WEB开发的问题,因为Spring的配置非常复杂,各种XML、JavaConfig、hin处理起来比较繁琐。于是为了简化开发者的使用,从而创造性地推出了Spring boot,约定优于配置,简化了spring的配置流程。
说得更简便一些:
Spring 最初利用“工厂模式”(DI)和“代理模式”(AOP)解耦应用组件。
大家觉得挺好用,于是按照这种模式搞了一个MVC框架(一些用Spring解耦的组件),用开发web应用(SpringMVC)。然后又发现每次开发都写很多样板代码,为了简化工作流程,于是开发出了一些“懒人整合包”,这套就是 Spring Boot。
Spring MVC的功能提供了一种轻度耦合的方式来开发web应用,Spring MVC是Spring的一个模块,一个web框架。通过Dispatcher Servlet, ModelAnd View和View Resolver,开发web应用变得很容易。解决的问题领域是网站应用程序或者服务开发——URL路由、Session、模板引擎、静态Web资源等等。
Spring Boot的功能Spring Boot实现了自动配置,降低了项目搭建的复杂度。众所周知,Spring框架需要进行大量的配置,Spring Boot引入自动配置的概念,让项目设置变得很容易。
Spring Boot本身并不提供Spring框架的核心特性以及扩展功能,只是用于快速、敏捷地开发新一代基于Spring框架的应用程序。也就是说,它并不是用来替代Spring的解决方案,而是和Spring框架紧密结合用于提升Spring开发者体验的工具。
所以,简单概括就是:
-
Spring 是一个“引擎”;
-
Spring MVC 是基于Spring的一个 MVC 框架 ;
-
Spring Boot 是基于Spring4的条件注册的一套快速开发整合包。
Spring Boot 下的 Spring MVC 和之前的 Spring MVC 使用是完全一样的,主要有以下注解:
1、@Controller
Spring MVC 的注解,处理 http 请求
2、@RestController
Spring 4 后新增注解,是@Controller注解功能的增强是@Controller与@ResponseBody的组合注解
如果一个 Controller 类添加了@RestController,那么该 Controller 类下的所有方法都相当于添加了@ResponseBody 注解
用于返回字符串或 json 数据
案例:
➢ 创建 MyRestController 类,演示@RestController 替代@Controller + @ResponseBody
➢ 启动应用,浏览器访问测试
3、@RequestMapping(常用)
支持 Get 请求,也支持 Post 请求
4、@GetMapping
RequestMapping 和 Get 请求方法的组合
只支持 Get 请求
Get 请求主要用于查询操作
5、@PostMapping
RequestMapping 和 Post 请求方法的组合
只支持 Post 请求
Post 请求主要用户新增数据
6、@PutMapping
RequestMapping 和 Put 请求方法的组合
只支持 Put 请求
Put 通常用于修改数据
7、@DeleteMapping
RequestMapping 和 Delete 请求方法的组合
只支持 Delete 请求
通常用于删除数据
8、综合案例
项目名称:013-springboot-springmvc 项目集成 springmvc
项目作用:演示常见的 SpringMVC 注解
1)创建一个 MVCController,里面使用上面介绍的各种注解接收不同的请求
2)启动应用,在浏览器中输入不同的请求进行测试
3)Http 接口请求工具 Postman 介绍
因为通过浏览器输入地址,默认发送的只能是 get 请求,通过 Postman 工具,可以模拟发送不同类型的请求,并查询结果,在安装的时候,有些机器可能会需要安装 MicroSort NETFramework
4)使用 Postman 对其它请求类型做个测试