什么是RESTful?
把RESTful想象成房子的设计图纸,房子想要建得好看,那就需要根据这个图纸来设计,房子的风格才会统一、美观。
如果没有设计图纸,自己随心所欲的建造,那么建成的房子可能会出现功能不齐全,风格不统一的情况。
RESTful是一种软件的设计风格。遵循一致的设计原则,可以使得不同的客户端可以轻松的和服务器进行交互。
RESTful设计风格的主要原则:
- 资源表示:每个资源通过唯一的URL进行标识。
- 统一的接口:使用统一的接口进行操作(GET、POST、PUT、DELETE等)
- 无通信状态:无状态通信意味着每个请求都是独立的,服务器不依赖之前的请求来处理后续的请求。所以客户端发送请求时,每个请求都应该包含足够的信息,服务器不需要保存客户端的状态。
- 资源的自述性:资源常见的表示格式包括JSON和XML。
- 按需加载:客户端可以通过请求特定的资源或资源的一部分来减少网络传输和提高性能。服务器按需返回响应。
SpringBoot实现RESTful API
REST框架中,每个网址即代表一种资源,所以URL中最好不要带有”动词“,使用名词即可
名词表示一个具体的资源,而动词是动态的
用户管理模块API:
控制器代码实现:
@PathVariable注解,用于从URL路径中提取变量值,并绑定到方法参数上。
@RestController
public class UserController {
@GetMapping("/user/{id}")
public String getUserById(@PathVariable int id) {
System.out.println(id);
return "根据ID获取用户信息";
}
@PostMapping("/user")
public String save(User user) {
return "添加用户";
}
@PutMapping("/user")
public String updata(User user){
return "更新用户";
}
@DeleteMapping("/user/{id}")
public String deleteById(@PathVariable int id) {
return "根据ID删除用户";
}
}