springboot系列11,REST

本文详细介绍了RESTful架构风格及其在Spring Boot中的应用。REST定义了统一接口、无状态和可缓存等架构约束,并通过URI识别资源,使用GET、PUT、POST、DELETE等操作。Spring MVC支持REST,提供了诸如@Controller、@GetMapping等注解,以及内容协商、拦截器和跨域处理等功能。此外,文章还深入讲解了Spring Boot中处理REST请求和响应的流程,涉及HandlerMapping、HttpMessageConverter等内容。
摘要由CSDN通过智能技术生成

REST

定义:REST即表述性状态传递(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。它是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。

架构约束:

统一接口:有统一的资源管理

C/S架构

无状态:用户状态主要在客户端,服务端没有状态

可缓存

分层系统

按需代码

三个基本方面:

资源识别:URI

资源操作:GET、PUT、POST、DELETE

自描述消息:Content-Type、MIME-Type、Media Type

Spring mvc对REST的支持

驱动注解:

定义:

@Controller:应用控制器注解声明,Spring模式注解

@RestController:等效于@Controller+@ResponseBody(组合注解,去源码看)

映射:

@RequestMapping:应用控制器映射注解声明

@*Mapping:例如@GetMapping等效于@RequestMapping(method = RequestMethod.GET)

请求:

@RequestParam:获取请求参数

@RequestHeader:获取请求头

@CookieValue:获取Cookie值

@RequestBody:获取完整请求主题内容

@PathVariable:获取请求路径变量

RequestEntity:获取请求内容(包括请求主体和请求头)

响应:

@ResponseBody:响应主体注解声明

ResponseEntity:相应内容(包括响应主体和响应头)

ResponseCookie:响应Cookie内容

拦截:

@RestControllerAdvice:@RestController注解切面通知

HandlerInterceptor:处理方法拦截器

跨域:

@CrossOrigin:资源跨域声明注解

CrosFilter:资源跨域拦截器

WebMvcConfigurer#addC

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值