文件上传统一处理工具类。Spring MVC 提供了MultipartFile
类来接收文件对象。
文件上传类
import java.io.File;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.multipart.MultipartFile;
public class UploadImg {
/**
* 文件上传
* @param request
* @param file
* @return
* @throws Exception
*/
public static String uploadImage(HttpServletRequest request, MultipartFile file) throws Exception {
// 存放上传文件的绝对路路径
String path = request.getServletContext().getRealPath("updown/images");
// 上传的文件名
String filename = file.getOriginalFilename();
// 获取后缀
String suffix = FileSuffix.getSuffix(filename);
// 以当前时间毫秒值加随机数重新命令文件名
String newFileName = RandomID.getRandomID() + suffix;
// 保存文件
file.transferTo(new File(path + File.separator + newFileName));
// 存到数据库的相对路径
String imgSavePath = File.separator + "updown" + File.separator + "images" + File.separator + newFileName;
return imgSavePath;
}
}
文件后辍名类
import java.io.File;
public class FileSuffix {
/**
* 获取文件名后缀,包含.
* @param filename
* @return
*/
public static String getSuffix(String filename){
File file = new File(filename);
String fileName = file.getName();
String suffix = fileName.substring(fileName.lastIndexOf("."));
return suffix;
}
/**
* 获取文件后缀名,.后面的名称,不包含点
* @param filename
* @return
*/
public static String getSuffixWithoutPoint(String filename){
File file = new File(filename);
String fileName = file.getName();
String suffix = fileName.substring(fileName.lastIndexOf(".") + 1);
return suffix;
}
}
更多内容请访问:IT源点
注意:本文归作者所有,未经作者允许,不得转载