1、在resources包下创建static文件夹,在static文件夹中创建upload文件夹
2、在项目的service包中创建FileService.java文件,加入以下内容
String uploadImage(MultipartFile file) throws Exception;
3、在项目的service.impl包中创建FileServiceImpl.java文件,内容如下:
@Service
public class FileServiceImpl implements FileService {
@Override
public String uploadImage(MultipartFile file) throws IOException {
String oldName =file.getOriginalFilename();
String fileName = UUID.randomUUID().toString()+oldName;
file.transferTo(new File(System.getProperty("user.dir")+"\\target\\classes\\static\\upload\\"+fileName));
return fileName;
}
}
4、在项目的controller包中创建FileController.java文件,内容如下
@RestController
public class FileController {
@Autowired
private FileService uploadService;
@PostMapping("/upload/image")
public Result uploadImage(@RequestParam("file") MultipartFile file) throws Exception {
return new Result<>(true, StatusCode.OK,"上传成功",uploadService.uploadImage(file));
}
}
5、在config包中创建WebConfig.java文件,内容如下:
@Configuration
public class WebConfig extends WebMvcConfigurationSupport {
/**
* 静态资源加载设置
* @param registry
*/
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/**").addResourceLocations("classpath:/static/");
}
}
6、可以直接通过地址栏使用
http://127.0.0.1:8081/upload/2266.jpg
其中upload即为1中创建的位于static文件夹中的upload文件夹。
比如有一文件位于static/js/xxx.js
则可以直接使用http://127.0.0.1:8081/js/xxx.js访问该静态文件