(摘录自讲义)
什么是REST
- REST是英文Representational State Transfer的缩写-表象化状态转变或者表述性状态转移;
- REST是Web服务的一种架构风格;
- 使用HTTP、URI等广泛流行的标准和协议
- 轻量级、跨平台、跨语言的架构设计。
总结:REST是一种设计风格。它不是一种标准,也不是一种软件,而是一种思想。REST通常基于使用HTTP,URI,和XML,JSON以及HTML这些现有的广泛流行的协议和标准。
什么是RESTful
- RESTful对应的中文是 REST式的
- RESTful Web Service是一种常见的REST的应用,是遵守了REST风格的web服务。
- REST式的web服务是一种ROA(面向资源的架构)
REST架构的主要原则
- 网络上的所有事物都可被抽象为资源(Resource)
- 每个资源都有一个唯一的资源标识符(Resource Identifier)
- 同一资源具有多种表现形式(xml、json等)
- 对资源的各种操作不会改变资源标识符
- 所有的操作都是无状态的(Stateless)
- 符合REST原则的架构方式即可称为RESTful
REST接口定义
REST接口定义.png- 幂等性:对同一REST接口的多次访问,得到的资源状态是相同的。
- 安全性:对该REST接口访问,不会使服务器端资源的状态发生改变。
REST接口设计
REST接口设计.pngHTTP响应状态码
HTTP响应状态码.pngSpringMVC实现RESTful
SpringMVC原生态的支持了REST风格的架构设计。
所涉及到的注解:
@RequestMapping
@PathVariable
@ResponseBody
……
实现新增用户
URL: /rest/user
请求:POST
实现:
默认情况下,PUT和DELETE请求是无法提交表单数据的。
解决方案:在web.xml中配置Spring提供的过滤器解决。
网友评论