/**
* 上传图片
*
* @param myfile 原始文件
* @param picdir 目标文件夹
* @return 返回访问路径
*/
public static String uploadpic(MultipartFile myfile, String picdir) {
String saveUrl = "/attached/";
String originalFilename = myfile.getOriginalFilename();
Map<String, String> maps = mkdir(saveUrl, picdir);
String endName = originalFilename.substring(
originalFilename.lastIndexOf("."), originalFilename.length()).toLowerCase();
String filename = UUID.randomUUID() + endName;
if ("jpg,jpeg,png,bmp,log".contains(endName.replaceAll("\\.", ""))) {
try {
FileUtils.copyInputStreamToFile(myfile.getInputStream(),
new File(maps.get("savePath"), filename));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return maps.get("saveUrl") + filename;
}
return null;
}
/**
* 创建文件
*
* @param saveUrl 保存路径
* @param dirName 文件名
* @return 返回文件信息
*/
public static Map<String, String> mkdir(String saveUrl, String dirName) {
InputStream inputStreamIp = Tools.class.getResourceAsStream("/ipconfig.properties");
Properties p = new Properties();
try {
p.load(inputStreamIp);
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
inputStreamIp.close();
} catch (IOException e) {
e.printStackTrace();
}
}
String savePath = p.getProperty("uploadPath");
saveUrl += dirName + "/";
savePath += dirName + "/";
File saveDirFile = new File(savePath);
if (!saveDirFile.exists()) {
boolean boolmkDirs = saveDirFile.mkdirs();
logger.debug("boolmkDirs = " + boolmkDirs);
}
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyyMMdd");
String ymd = LocalDate.now().format(dtf);
savePath += ymd + "/";
saveUrl += ymd + "/";
File dirFile = new File(savePath);
if (!dirFile.exists()) {
boolean canMake = dirFile.mkdirs();
logger.debug("saveUrl = [" + saveUrl + "], dirName = [" + dirName + "]");
}
Map<String, String> maps = new HashMap<String, String>(2);
maps.put("savePath", savePath);
maps.put("saveUrl", saveUrl);
return maps;
}
uploadPath= E:\\new\\project\\wellLid\\target\\wellLid\\attached