什么是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