国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

Restful傳遞數組參數及注解大全

2019-11-26 14:46:05
字體:
來源:轉載
供稿:網友

RESTful 一種軟件架構風格,設計風格而不是標準,只是提供了一組設計原則和約束條件。它主要用于客戶端和服務器交互類的軟件。基于這個風格設計的軟件可以更簡潔,更有層次,更易于實現緩存等機制。

需要傳遞數組參數的情況,如果是一般的form表單,可以直接定義參數類型為List<String>即可(不能定義為數組類型,否則只能得到一個null)。

示例代碼如下:

@POST@Path("/user" )public Response createUser(@FormParam("username" ) String username,      @FormParam( "keyword") List<String> keywords) {

文件上傳接口如何傳遞 數據 參數?

但是如果是上傳文件的接口,因為使用了 @FormDataParam 注解,則不能使用上述用法:

@POST@Path("/upload" )@Consumes(MediaType.MULTIPART_FORM_DATA )public Response uploadFile(@FormDataParam ("filename" ) String filename,      @FormDataParam( "file") InputStream uploadedInputStream,      @FormDataParam( "file") FormDataContentDisposition fileDetail ,      @FormDataParam( "keyword") final List<String> keywords) {

訪問這個接口時會發生異常:

java.lang.IllegalArgumentException   : wrong number of arguments

可見使用 @FormDataParam 注解時,將參數類型定義成List<String>是不行的,可以定義成 List<FormDataBodyPart> ,從 FormDataBodyPart對象中可以取得參數:

@POST@Path("/upload" )@Consumes(MediaType.MULTIPART_FORM_DATA )public Response uploadFile(@FormDataParam("filename" ) String filename, @FormDataParam( "file") InputStream uploadedInputStream, @FormDataParam( "file") FormDataContentDisposition fileDetail , @FormDataParam( "keyword") final List<FormDataBodyPart> keywordObjs ) {   if (keywordObjs != null && ! keywordObjs.isEmpty()) { for (FormDataBodyPart keywordObj : keywordObjs) {   String keyword = keywordObj.getValueAs(String.class);   System. out.println( "關鍵字:" + keyword );     }   }

RESTful 注解大全

@GET、@POST、@PUT、@DELETE、@HEAD

   @GET、@POST、@PUT、@DELETE 以及 @HEAD 均是 HTTP 請求方法指示符注釋。您可以使用它們來綁定根資源或子資源內的 Java 方法與 HTTP 請求方法。HTTP GET 請求被映射到由 @GET 注釋的方法;HTTP POST 請求被映射到由 @POST 注釋的方法,以此類推。

@Conumes 和 @Produces

@Conumes注釋代表的是一個資源可以接受的MIME類型。@Produces注釋代表的是一個資源可以返回的MIME類型。

@Path

 @Path注釋被用來描述根資源、子資源方法或子資源位置。value值可以包含文本字符、變量或具有定制正則表達式的變量。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 上林县| 金湖县| 神池县| 台北市| 南阳市| 延长县| 额敏县| 永安市| 马公市| 扶风县| 东乌| 彩票| 乌什县| 淳化县| 内乡县| 拜城县| 樟树市| 泾川县| 郑州市| 北京市| 常熟市| 峨边| 正镶白旗| 纳雍县| 沙河市| 通化县| 宝清县| 营山县| 石林| 剑河县| 鹤壁市| 临湘市| 江北区| 若羌县| 德庆县| 南开区| 饶河县| 太原市| 平邑县| 五华县| 周宁县|