集团公司网站源码php企业网站多少钱一年
目录
1. 传递对象
2. 后端参数重命名(后端参数映射)
3. 传递数组
4. 传递集合
5. 传递JSON数据
5.1 JSON概念
5.2 JSON语法
5.3 JSON字符串和Java对象互转
5.4 JSON优点
5.5 传递JSON对象
6. 获取URL中参数@PathVariable
7. 上传文件@RequestPart
1. 传递对象
【注意】
此处的 @Data 注解的作用是构造对象每个参数的 get/set 方法,以及重写 toString 方法。
要使用 @Data 注解,需要先导入 lombok 依赖。
请求传入对象数据:
服务端代码:
客户端传入数据:
响应结果(toString):
2. 后端参数重命名(后端参数映射)
例如:
传入数据与响应结果:
此处 @RequestParam 的含义是:
用 “t” 接收请求发送的数据,然后将 “t” 的值再赋值给 “createTime” 这个参数
默认情况下,如果参数没有接收到数据,会继续返回空值:
但是加上了 @RequestParam 注解,该参数就会默认变成 必传参数 :
此时如果该参数没有接收到值,就会报错,因为它是一个 必传参数 。
实际上,也可以将该参数设置为 非必传参数
只需要在 @RequestParam 内的 “required”参数的值设置为 false 即可:
此时该参数没有接收到参数,不会报错,而是直接为空值:
3. 传递数组

向数组传入数据:1,2,3,4。响应结果:
调用toString方法,打印数组:
响应结果:
除了上述方式,还可以用逗号隔开的方式向数组传入数据:
响应结果是一样的:
4. 传递集合
后端接收代码:
传入数据,响应结果:
集合也支持使用逗号隔开的方式传入数据:
如果后端没有在参数前加入 @RequestParam 就会报错:
5. 传递JSON数据
5.1 JSON概念
5.2 JSON语法
这是一段JSON数据:
{"squadName" : "Super hero squad" ,"homeTown" : "Metro City" ,"formed" : 2016 ,"secretBase" : "Super tower" ,"active" : true ,"members" : [{"name" : "Molecule Man" ,"age" : 29 ,"secretIdentity" : "Dan Jukes" ,"powers" : [ "Radiation resistance" , "Turning tiny" , "Radiationblast" ]}, {"name" : "Madame Uppercut" ,"age" : 39 ,"secretIdentity" : "Jane Wilson" ,"powers" : [ "Million tonne punch" , "Damage resistance" , "Superhumanreflexes" ]}, {"name" : "Eternal Flame" ,"age" : 1000000 ,"secretIdentity" : "Unknown" ,"powers" : [ "Immortality" , "Heat Immunity" , "Inferno" ,"Teleportation" , "Interdimensional travel" ]}]}
{ "squadName" : "Super hero squad" , "homeTown" : "MetroCity" , "formed" : 2016 , "secretBase" : "Super tower" , "active" : true , "members" :[{ "name" : "Molecule Man" , "age" : 29 , "secretIdentity" : "Dan Jukes" , "powers" :[ "Radiation resistance" , "Turning tiny" , "Radiation blast" ]},{ "name" : "MadameUppercut" , "age" : 39 , "secretIdentity" : "Jane Wilson" , "powers" :[ "Million tonnepunch" , "Damage resistance" , "Superhuman reflexes" ]},{ "name" : "EternalFlame" , "age" : 1000000 , "secretIdentity" : "Unknown" , "powers" :[ "Immortality" , "HeatImmunity" , "Inferno" , "Teleportation" , "Interdimensional travel" ]}]}
JSON的语法:
JSON的两种结构
5.3 JSON字符串和Java对象互转
< dependency >< groupId >com.fasterxml.jackson.core</ groupId >< artifactId >jackson-databind</ artifactId >< version >2.13.5</ version ></ dependency >


5.4 JSON优点
5.5 传递JSON对象
接收JSON对象, 需要使⽤ @RequestBody 注解
RequestBody: 请求正⽂,意思是这个注解作⽤在请求正⽂的数据绑定,请求参数必须在写在请求正文中
后端实现:
使用postman发送请求,以及响应:
通过Fiddler抓包,观察参数:
6. 获取URL中参数@PathVariable
@PathVariable 这个注解主要作⽤在请求URL路径上的数据绑定

用postman发送请求,以及响应结果:
@PathVariable 也可以实现“重命名”的效果:
原理与上述 @RequestParam 相同
【注意】
7. 上传文件@RequestPart

使用postman发送请求,以及结果:
文件成功上传到磁盘路径D:/temp/Cirno.jpg :
完
如果哪里有疑问的话欢迎来评论区指出和讨论,如果觉得文章有价值的话就请给我点个关注还有免费的收藏和赞吧,谢谢大家!