工具类:
(直接复制就可以)
package com.guomo.utils;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
import java.io.*;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
* 图片上传工具类
*/
public class ImageUploadUtil {
public static String uploadFile(@RequestParam("file") MultipartFile file, String strPath) throws IOException {
String fileName = file.getOriginalFilename();//获取文件名
fileName = getFileName(fileName);
String filepath = getUploadPath(strPath);
if (!file.isEmpty()) {
try (BufferedOutputStream out = new BufferedOutputStream(
new FileOutputStream(new File(filepath + File.separator + fileName)))) {
out.write(file.getBytes());
out.flush();
return "/"+strPath+"/"+fileName;
} catch (FileNotFoundException e) {
return "error";//( "上传文件失败 FileNotFoundException:" + e.getMessage());
} catch (IOException e) {
return "error";//( "上传文件失败 IOException:" + e.getMessage());
}
} else {
return "error";//( "上传文件失败,文件为空");
}
}
/**
* 文件名后缀前添加一个时间戳
*/
private static String getFileName(String fileName) {
int index = fileName.lastIndexOf(".");
final SimpleDateFormat sDateFormate = new SimpleDateFormat("yyyymmddHHmmss"); //设置时间格式
String nowTimeStr = sDateFormate.format(new Date()); // 当前时间
fileName = fileName.substring(0, index) + "_" + nowTimeStr + fileName.substring(index);
return fileName;
}
/**
* 获取当前系统路径
*/
private static String getUploadPath(String strPath) throws IOException {
File file = new File(strPath);
File fileParent = file.getParentFile();
if (!fileParent.exists()) {
fileParent.mkdirs();
}
if (!file.exists()) file.mkdirs();
return file.getAbsolutePath();
}
}
工具类的使用:
url为获取工具类返回的路径+文件名,路径为相对路径,如果想要获取绝对路径的话,请修改工具类return。
打开保存的图片:
在localhost,或IP地址 打开
需要在配置静态资源里面写配置,写的有点乱。
配置完成以后就可以去浏览器访问了。
这里做个学习记录