Jax-rs規(guī)范REST接口文件上傳代碼實例
使用jax-rs規(guī)范,需要引入spring-boot-starter-jersey包,用于支撐@Path,@GET等jax-rs注解,使用jax-rs規(guī)范上傳文件,需要引入jersey-media-multipart包,用于支撐@FormDataParam,FormDataContentDisposition
<dependency> <groupId>org.glassfish.jersey.media</groupId> <artifactId>jersey-media-multipart</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jersey</artifactId> </dependency>
然后需要將接收外部請求的Controller類注冊到ResourceConfig, 將處理上傳文件的MultipartFeature類注冊到ResourceConfig
@Configuration public class MyJaxrsConfig extends ResourceConfig { public MyJaxrsConfig() { super.register(UserService.class); register(MultiPartFeature.class); } }
上傳文件時需要注意的地方:
1.指定接口的消費數(shù)據(jù)類型為multipart/form-data
2.文件的接收分為2部分: 一部分是描述數(shù)據(jù),一部分是輸入流數(shù)據(jù),
描述數(shù)據(jù)用FormDataContentDisposition對象接收,流數(shù)據(jù)用InputStream對象接收.通過類似于@PathParam綁定注解的@FormDataParam分別將文件數(shù)據(jù)的兩部分數(shù)據(jù)綁定到對應的變量上.
@Path("/upload")
@POST
@Consumes(MediaType.MULTIPART_FORM_DATA_VALUE)
void upload(@FormDataParam("file") InputStream inputStream, @FormDataParam("file") FormDataContentDisposition file);
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Spring AI 使用本地 Ollama Embeddings的操作方法
使用 OpenAI 的 Embeddings 接口是有費用的,如果想對大量文檔進行測試,使用本地部署的 Embeddings 就能省去大量的費用,所以我們嘗試使用本地的 Ollama Embeddings,這篇文章主要介紹了Spring AI 使用本地 Ollama Embeddings,需要的朋友可以參考下2024-05-05Idea 2020.2安裝MyBatis Log Plugin 不可用的解決方法
小編在使用時發(fā)現(xiàn)Idea 2020.2 MyBatis Log Plugin 收費了,這個可以替代用,小編特此把解決方案分享到腳本之家平臺供大家參考,感興趣的朋友一起看看吧2020-11-11Java連接mysql數(shù)據(jù)庫的詳細教程(推薦)
這篇文章主要介紹了Java連接mysql數(shù)據(jù)庫的詳細教程,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-08-08Spring Boot實現(xiàn)STOMP協(xié)議的WebSocket的方法步驟
這篇文章主要介紹了Spring Boot實現(xiàn)STOMP協(xié)議的WebSocket的方法步驟,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-05-05springboot?使用websocket技術(shù)主動給前端發(fā)送消息的實現(xiàn)
這篇文章主要介紹了springboot?使用websocket技術(shù)主動給前端發(fā)送消息的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-12-12mybatis簡介與配置_動力節(jié)點Java學院整理
這篇文章主要介紹了mybatis簡介與配置,介紹了MyBatis+Spring+MySql簡單配置,有興趣的可以了解一下2017-09-09SpringBoot+Mybatis實現(xiàn)登錄注冊的示例代碼
這篇文章主要介紹了SpringBoot+Mybatis實現(xiàn)登錄注冊的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-03-03