前言
说到传参肯定大家都不陌生,从事开发的更可以可以说是天天遇到了,这篇文章也就是主要记录以下传参的各种方式,因为经常使用的是SpringBoot来开发,所以就拿SpringBoot来举例,记录前端向后端传参的若干种方式。
普通传参(前端参数与后端形参名称一致)
前端代码:
1 | var param = { |
后端代码
1 |
|
后台结果:name=张三
普通传参(前端参数与后端形参名称不一致)
前端代码:
1 | var param = { |
后端代码
1 |
|
当前端参数名称和后端不一致时可以使用RequestParam注解,请求参数的参数名,可以作为参数映射名称
后台结果:name=李四
pojo实体类传参
前端代码
1 | var param = { |
后端代码
1 |
|
实体类代码
1 | public class Pusers { |
前端参数名称对应实体类中的属性名称,后端形参可以直接用实体类来表示
后台结果:users=账户,password=密码
多参无实体类传参一
前端代码
1 | var param = { |
后端代码
1 |
|
后端结果:{“users”:”账户”,”password”:”密码”,”name”:”我的名字”}
多参无实体类传参二
前端代码
1 | var param = { |
后端代码
1 |
|
后端结果:{users=账户, password=密码, name=我的名字},我的名字,账户
传递数组
前端代码
1 | var param = { |
后端代码
1 |
|
后端结果:[1, 2, 3]
传递集合
前端代码
1 | var param = { |
后端代码
1 |
|
后端结果:[1, 2, 3]
传递复杂性参数
前端代码
1 | var dcc = []; |
后端代码
1 |
|
后端结果:[{“username”:”张三”,”lists”:[{“users”:”张三1”,”password”:”密码1”},{“users”:”张三2”,”password”:”密码2”}]}]
总结
- @RequestBody注解,必须与contentType 类型application/json配合使用
- @RequestParam注解,必须与contentTyp类型application/x-www-form-urlencoded配合使用,其为默认类型。
- JSON.stringify()把对象类型转换为字符串类型,配合@RequestBody注解和contentType 类型application/json使用。
以上就是Springboot传递参数的几种举例,每个方法都是经过博主实际测试通过的,在此分享同时也算是做个记录。