小编Ste*_*eve的帖子

使用Spring 4 restTemplate(Java Client和RestController)上传MultipartFile列表

我试图使用spring restTemplate将MultipartFile列表发布到我的RestController,尽管我对我的客户端和控制器使用的确切语法和类型有点困惑.基于我所做的研究,到目前为止我所拥有的......

FileUploadClient.java

public void uploadFiles(List<MultipartFile> multiPartFileList) throws IOException {
    MultiValueMap<String, Object> map = new LinkedMultiValueMap<>();
    List<Object> files = new ArrayList<>();
    for(MultipartFile file : multiPartFileList) {
        files.add(new ByteArrayResource(file.getBytes()));
    }
    map.put("files", files);

    // headers is inherited from BaseClient
    headers.setContentType(MediaType.MULTIPART_FORM_DATA);
    HttpEntity<MultiValueMap<String, Object>> request = new HttpEntity<>(map, headers);
    ResponseEntity<String> response = restTemplate.exchange(restURI + "/rest/fileupload/uploadfiles", HttpMethod.POST, request, String.class);
    if(HttpStatus.OK.equals(response.getStatusCode())) {
        System.out.println("status for /rest/fileupload/uploadfiles ---> " + response);
    }
}
Run Code Online (Sandbox Code Playgroud)

FileUploadRestController.java

@RequestMapping(value = "/uploadfiles", method = RequestMethod.POST)
public ResponseEntity<?> uploadFiles(@RequestParam("files") List<MultipartFile> files, HttpServletRequest request) { …
Run Code Online (Sandbox Code Playgroud)

java spring multipartform-data spring-mvc resttemplate

2
推荐指数
1
解决办法
1万
查看次数