1、首先是如何使用PostMan进行上传图片
接下来是controller层
这里一定要注意的是哪个@RequestParam注解,如果不添加上回报无法识别这个参数错误
2、但是如果你是下面这种参数回报Failed to convert value of type 'org.springframework.web.multipart.support.
这里就需要写成MultipartFile这个类,但是有人就会说我就想使用File类,在代码中操作怎么办?那就需要这个工具类,首先你还是在参数中写MultipartFile类。然后转成File。
/**
* 文件转换工具类
*
* @author henshuia
* @date 2020-07-23
*/
public class MultipartFileToFileUtil {
/**
* MultipartFile 转 File
*
* @param file
* @throws Exception
*/
public static File multipartFileToFile(MultipartFile file) {
try {
File toFile;
if (file != null && file.getSize() > 0) {
InputStream ins = null;
ins = file.getInputStream();
toFile = new File(file.getOriginalFilename());
inputStreamToFile(ins, toFile);
ins.close();
return toFile;
}
return null;
} catch (IOException e) {
e.printStackTrace();
return null;
}
}
/**
* 获取流文件
*
* @param ins
* @param file
*/
public static void inputStreamToFile(InputStream ins, File file) {
try {
OutputStream os = new FileOutputStream(file);
int bytesRead;
byte[] buffer = new byte[8192];
while ((bytesRead = ins.read(buffer, 0, 8192)) != -1) {
os.write(buffer, 0, bytesRead);
}
os.close();
ins.close();
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 删除本地临时文件
*
* @param file
*/
public static void deleteTempFile(File file) {
if (file != null) {
File del = new File(file.toURI());
del.delete();
}
}
}
3、整体的图片上传流程截图,因为我上传到的是OSS,所以我使用了其它工具类
SubStringUtil是Java 实现倒数第一个斜杠和倒数第二个斜杠数据工具类:链接:https://blog.csdn.net/henshuia/article/details/111866794
注:之后我会上传OSS整体上传图片的流程,包括如何去申请开通OSS,如何进行配置,以及操作的工具类,有需要的可以关注一下。