RestFul
概念
REST 指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是 RESTful。(百度百科)
简单来说,RESTful架构中
-
每一个URI代表1种资源;
-
客户端使用GET、POST、PUT、DELETE 个表示操作方式对服务端资源进行操作:
- GET用来获取资源
- POST用来新建资源(也可以用于更新资源)
- PUT用来更新资源
- DELETE用来删除资源
-
通过操作资源的表现形式来操作资源;
-
资源的表现形式是XML或者HTML;
-
客户端与服务端之间的交互在请求之间是无状态的,从客户端到服务端的每个请求都必须包含理解请求所必需的信息。
尤其在当前前后端分离架构和分布式架构下,通信基本上都遵循REST,数据交互采用JSON(数据交互一定采用json,也可以采用xml)这种没有明确规定。
在SpringMVC中提供了Rest风格的控制器注解@RestController
,用来满足Rest开发。该注解的作用就是将每个处理器方法的返回值转换为json数据进行响应,相当于在每个处理方法上加上了@ResponseBody
@RestController
public class RestfulController {
@GetMapping("/sava")
public User sava() {
return new User(1, "Lily");
}
}
相当于:
@Controller
public class RestfulController {
@GetMapping("/sava")
@ResponseBoby
public User sava() {
return new User(1, "Lily");
}
}
但是后来写项目的时候发现大部分项目中,前端基本只会发两种请求方式,GET和POST。