什么是RestFul架构风格&&Springboot四种传参方式

1、Restful

Rest:资源表现层状态转化

所谓的资源就是指网络中一切事物都是资源Resource 每一个资源都有一个唯一URL

表现层:将资源具体呈现出来形式,称之为表现层,例如jsp,html

状态转化:用来操作展示出来资源只有到服务器端才能确定是哪种状态转化

1.1、什么是唯一URL

传统url:http://localhost:8080/demo/user/findById?id=1 在?0前面的是地址,在?后面的是传递的参数

Restful: http://localhost:8080/demo/user/findById/21 一整个是完整的url

1.2、关于状态转化

客户端与服务端状态对应上原有http动词:GET,POST,PUT,Delete,PATCH,HEADER

GET 查询

POST 添加

PUT 更新(资源中除了id以外字段全部更新)

PATCH 更新(资源中除了id以外字段部分更新)

DELETE 删除

1.3、什么是Restful风格

是一种架构风格,日后一个架构设计只要符合Rest设计原则,则称这个架构为Restful架构

Rest:设计原则,是约定也是约束

  • 使用rest的url替换传统的url
  • 使用五种动词对应服务端四种操作

2、springboot基于Restful风格的四种传递参数的方式

2.1、QueryString方式

http://localhost:8080/demo/usr/findById?id=21&name=zs

@RequestMapping("/findById")pubilc void test(String id,String name){}@RequestMapping("/findById")pubilc void test(User user){}@Dataclass User{   private String id;   private String name;}

2.2、路径传递参数

http://localhost:8080/demo/user/findById/21/zs

@RequestMapping("/findById/{id}/{name}")public void test(@PathVariable("id") String id, @PathVariable("name")String name){}

2.3、form表单方式

json格式

         
@RequestMapping("url")public void test(String id,String name){}@RequestMapping("url")public void test(User user){}@Dataclass User{   private String id;   private String name;}

form表单文件

     

form表单的post请求必须是

@PostMapping("url")pubilc void test(MultipartFile photo){}

文件上传


2.4、传递json格式字符串

异步请求 { url,”{‘id’:1,‘name’:‘小爽’}” } content-type=“application/json”

pubilc void test(@RequestBody User user){}@Dataclass User{   private String id;   private String name;}

@PatchMapping