服务器之家

服务器之家 > 正文

@PathParam和@QueryParam区别简析

时间:2021-03-25 10:41     来源/作者:实习小编嘿

本文主要研究的是@pathparam和@queryparam区别问题,具体如下。

问题

今天调试一个上传功能,客户端手持机发送数据,在url中附加一个参数,后台用@pathparam接收,但是报错,无法获取这个参数。

url:http://192.168.1.3/web1_service/convert/vict_hj1000?unit=160106

@PathParam和@QueryParam区别简析

代码

?
1
2
3
4
java color1">@path("/vict_hj1000")
@post
@consumes(mediatype.multipart_form_data)
public response createvicthj1000detect(@formdataparam("name0") inputstream uploadedinputstream, @pathparam("unit") long unit) throws jsonexception {

也就是说,这个unit参数获取不到,怎么回事呢?

原因解释

网上查了一遍,找到了原因,是url中参数的写法不对,导致后台的@pathparam无法获取,下面列出@pathparam和@queryparam的区别:

1. @pathparam ,url中直接在斜杠后面添加参数值, 例如:www.a.com/student/001 ;
2. @queryparam ,url中在后面添加【键值对】形式的参数,例如:www.a.com/student?id=001 ;

我的应用里面,url用的是键值对形式的参数,而后台用的是@pathparam,不匹配,因此无法获取。

解决办法就是修改url,取消键值对,在斜杠后直接加参数值,改成:

http://192.168.1.3/web1_service/convert/vict_hj1000/160106

并且后台修改@path注解,改为:

?
1
@path("/vict_hj1000/{unit}")

问题解决!

总结

以上就是本文关于@pathparam和@queryparam区别简析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

原文链接:http://blog.csdn.net/zhouyingge1104/article/details/51034970

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
Intellij idea2020永久破解,亲测可用!!!
Intellij idea2020永久破解,亲测可用!!! 2020-07-29
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
返回顶部