MultipartFile大家想必不陌生,在SpringMVC的控制器方法中,我们可以通过MultipartFile自动注入上传的文件。我们从一个小案例引入,深入了解下MultipartFile
1、一个小问题
此问题来自真实案例,大家可以先想想当我们通过生产者端 /producer/produce上传文件时,消费者端会输出什么
1.1、整体结构
我们定义了以下结构:
-
服务端
- 生产者,将文件上传至生产者,经过处理后再发送到消费者
- 消费者,消费生产者发送来的文件
-
远程调用client
- 提供消费者的远程调用服务
1.2、生产者端
我们简单定义了一个上传功能,如下所示
@RestController
public class ProducerController {
@Autowired
private ConsumerFeignClient consumerFeignClient;
@PostMapping("/producer/produce")
public String produce(@RequestBody MultipartFile video) {
System.out.println("video:"+video);
//经过一系列操作,将视频转为图片...
MultipartFile photo=video;
consumerFeignClient.consume(photo);
return "video";
}
}
复制代码
1.3、消费者端
在消费者端我们直接输出photo
@RestController
public class ConsumerController {
@PostMapping("/consumer/consume")
public String consume(@RequestBody MultipartFile photo) {
System.out.println("photo:"+photo);
return "photo";