Spring MVC 获取参数

文章详细介绍了Java后端如何处理各种类型的参数,包括单个、多个、JSON对象、表单数据,以及使用@RequestBody注解处理。同时,讲解了如何重命名参数、设置参数必传和非必传,以及利用@PathVariable获取URL参数。此外,还阐述了文件上传的实现,包括基本上传和改进方法,以及如何处理Cookie、Session和Header。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1..获取参数

得到单个参数:

运行结果:

得到俩个参数:

运行结果: 

 

得到多个参数(对象)

 

 运行结果:

 通过表单传递参数:

 但是,如果我用json传递就不行了,name=null,password=null

json对象传递参数:加个注解就可以传递了@RequestBody

我们看看postman传递参数的方法有哪些?(用户可以通过文件,form表单,raw,binary等方式,将参数,传递给Java后端程序)

 2.后端参数重命名

假如前端有个小白把password给改成了pwd,我后端拿不到这个参数,前端正好放假,我该怎么办?难道把password全都改成pwd? 这代价太大了。

这种情况,我们就可以使⽤ @RequestParam 来重命名前后端的参数值.

运行结果:

3.设置参数必传@RequestParam

 运行结果:

只传一个参数:

 参数都传:

非必传参数设置

如果我们的实际业务前端的参数是⼀个⾮必传的参数,我们可以通过设置 @RequestParam 中的
required=false 来避免不传递时报错,具体实现如下:
 

运行结果:

只传递一个参数:

4.获取URL中的参数@PathVariable

 

 

运行结果:

 

 

5.上传文件@RequestPart

上传文件到项目的        resources/static/img/hello.png

 

用postman模拟请求:

 

运行结果:

 

 

上传文件改良:

 

 

上传文件的路径最好放在application.properties中,方便后序修改。

获取项目目录的几种方式:

ResourceUtils.getFile(ResourceUtils.CLASSPATH_URL_PREFIX).getPath();

new ClassPathResource("").getFile().getAbsolutePath();

ClassUtils.getDefaultClassLoader().getResource("").getPath();

ResourceUtils.getFile("classpath:static/").getPath();

6.获取Cookie/Session/header

1.获取Cookie,@CookieValue

 

 

 

 

 

 2.获取Header,@RequestHeader

 

 

 

 3.Session存储和获取

 Session存储

 

 运行结果:

 

 

 Session获取,@SessionAttribute

 

运行结果:

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿瞒有我良计15

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值