@PathVariable注解允许参数为空,不传参数如何处理?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
说明
设置可以不传:
但是请求的时候,仍然提示projectId必传:
这是因为url要求带参,属于其他参数。
解决办法
设置多个url路径即可,有的传参,有的不传。当然要求必须是假
这个问题以前解决过,——还是要温习一下比较好呀
<强>补充:接收参数注解@PathVariable与@RequestParam与不使用注解接收参数的情况强>
@RequestParam使用场景:
@RequestParam:顾名思义,获取请求参数的
@RequestParam的两个属性:价值获取值,需要为真正的必填
1。1前端地址情景:
http://localhost: 8989/SSSP/员工吗?pageNo=2
如果想获取地址中的pageNo的值的2 & # 39;比;,则使用@RequestParam
1.2。前端引导请求情景:
传单个参数:
queryParams: {id, id},//,(此时id已获取到js,如var id =, row.id )
传多个参数:
, queryParams:函数(params) { ,才能返回{ ,,,类型:# (“.val类型# 39;), ,,,帐号名称:#('帐号名称# 39;).val ,,,} 以前,}>1.3后台获取上面两种传参方式:
Public Object getXiFeiList (@RequestParam Map<字符串,Object>, params) { ,//使用方式一:使用得到(“关键”)获取后使用 ,params.get (" id "); ,//使用方式二:作为查询的参数创建对象,直接使用 ,Query Query =, new 查询(params); ,ListdictList =, dictSevice.list(查询); } @PathVariable使用场景:
@PathVariable:顾名思义,获取url地址中的一部分值
1。前端地址单参数情景:
http://localhost: 8989/SSSP/电磁脉冲/类型
如果想获取地址中的emp/类型中的“& # 39;类型,则使用@PathVariable
2。前端地址多参数情景
http://localhost: 8989/SSSP/电磁脉冲/7/5
如果想获取地址中的emp/7/5中的“7 & # 39;& # 39;5 & # 39;,则使用@PathVariable
3。后台获取:
接收单个参数
String addD (@PathVariable(“类型”),String 类型)接收多个参数
String addD (@PathVariable(“类型”),String 类型,@PathVariable (" id "), Long id)不使用注解就可以接收参数的情况
情况1。前端Js中发送ajax请求数据:{“id # 39;, id}情景:
删除(id) { ,function () { ,,. ajax美元(){ ,,url:前缀+“/删除”, ,,类型:“文章”, ,,数据:{“id # 39;, id}//ajax使用数据传值时使用@PathVariable .......。才能 ,,,} ,,,} ,,,}情况1。后台获取:
public R 删除(Long id){},//,获取后就可以直接使用情况2。前端JS中发送ajax请求数据:美元(& # 39;# addLoanForm& # 39;) .serialize()情景:
. ajax({美元 ,缓存:没错, 类型:大敌;“POST", ,url:“/loansign/signProject/creditSave" ,数据:$ (& # 39;# addLoanForm& # 39;) .serialize () , ,//重要:将前台表单中的数据序列化,序列化的内容是名字 }情况2。后台获取:
public R creditSave (signCredit, SignCreditDO ){}//使用对象接收数据看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。
@PathVariable注解允许参数为空,不传参数如何处理