@PathParam和@QueryParam區(qū)別簡析
本文主要研究的是@PathParam和@QueryParam區(qū)別問題,具體如下。
問題
今天調(diào)試一個(gè)上傳功能,客戶端手持機(jī)發(fā)送數(shù)據(jù),在URL中附加一個(gè)參數(shù),后臺(tái)用@PathParam接收,但是報(bào)錯(cuò),無法獲取這個(gè)參數(shù)。
url:http://192.168.1.3/web1_service/convert/vict_hj1000?unit=160106
代碼
@Path("/vict_hj1000") @POST @Consumes(MediaType.MULTIPART_FORM_DATA) public Response createVictHJ1000Detect(@FormDataParam("name0") InputStream uploadedInputStream, @PathParam("unit") Long unit) throws JSONException {
也就是說,這個(gè)unit參數(shù)獲取不到,怎么回事呢?
原因解釋
網(wǎng)上查了一遍,找到了原因,是url中參數(shù)的寫法不對(duì),導(dǎo)致后臺(tái)的@PathParam無法獲取,下面列出@PathParam和@QueryParam的區(qū)別:
1. @PathParam ,url中直接在斜杠后面添加參數(shù)值, 例如:www.a.com/student/001 ;
2. @QueryParam ,url中在后面添加【鍵值對(duì)】形式的參數(shù),例如:www.a.com/student?id=001 ;
我的應(yīng)用里面,url用的是鍵值對(duì)形式的參數(shù),而后臺(tái)用的是@PathParam,不匹配,因此無法獲取。
解決辦法就是修改URL,取消鍵值對(duì),在斜杠后直接加參數(shù)值,改成:
http://192.168.1.3/web1_service/convert/vict_hj1000/160106
并且后臺(tái)修改@Path注解,改為:
@Path("/vict_hj1000/{unit}")
問題解決!
總結(jié)
以上就是本文關(guān)于@PathParam和@QueryParam區(qū)別簡析的全部內(nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!
相關(guān)文章
Java多線程工具CompletableFuture的使用教程
CompletableFuture實(shí)現(xiàn)了CompletionStage接口和Future接口,前者是對(duì)后者的一個(gè)擴(kuò)展,增加了異步回調(diào)、流式處理、多個(gè)Future組合處理的能力。本文就來詳細(xì)講講CompletableFuture的使用方式,需要的可以參考一下2022-08-08SpringBoot使用JavaMailSender實(shí)現(xiàn)發(fā)送郵件+Excel附件
項(xiàng)目審批完畢后,需要發(fā)送郵件通知相關(guān)人員,并且要附帶數(shù)據(jù)庫表生成的Excel表格,這就要求不光是郵件發(fā)送功能,還要臨時(shí)生成Excel表格做為附件,本文詳細(xì)介紹了SpringBoot如何使用JavaMailSender實(shí)現(xiàn)發(fā)送郵件+Excel附件,需要的朋友可以參考下2023-10-10在springboot項(xiàng)目中同時(shí)接收文件和多個(gè)參數(shù)的方法總結(jié)
在開發(fā)接口中,遇到了需要同時(shí)接收文件和多個(gè)參數(shù)的情況,可以有多種方式實(shí)現(xiàn)文件和參數(shù)的同時(shí)接收,文中給大家介紹了兩種實(shí)現(xiàn)方法,感興趣的同學(xué)跟著小編一起來看看吧2023-08-08IDEA中配置多個(gè)版本的JDK的實(shí)現(xiàn)示例
IDEA可以配置多個(gè)JDK,根據(jù)需要使用不同版本的,本文就來介紹一下IDEA中配置多個(gè)版本的JDK的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下2024-03-03Spring?Boot中的過濾器攔截器監(jiān)聽器使用技巧匯總
本文將介紹在Spring?Boot應(yīng)用程序中使用過濾器、攔截器和監(jiān)聽器的使用技巧,我們將討論它們之間的區(qū)別,以及何時(shí)使用它們,我們還將提供代碼示例,以幫助您在自己的應(yīng)用程序中使用它們2023-12-12