文件上传工具类

简介: 文件上传工具类
package cn.javabs.pet.util;

import java.io.File;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Objects;

import org.springframework.web.context.ContextLoader;
import org.springframework.web.multipart.MultipartFile;

/**
 * 上传工具类
 * spring mvn支持
 */
public class UploadUtil {
  

  /**
   * 图片上传
   * @return 返回相对路径
   * @param photo 图片文件
   * @param photoFileName 文件名
   * @param savePath 文件保存路径(相对于web根目录)
   * @return
   * @throws Exception 
   */
  public static String fileUpload(MultipartFile file) throws Exception{
    // 判断是否有上传文件
    if (Objects.isNull(file) || file.isEmpty() || Objects.isNull(file.getOriginalFilename())) {
      return null;
    }
    String savePath = "picture"; // 保存文件的相对目录
    String fileName = file.getOriginalFilename();
    // 文件存储路径
    String path = ContextLoader.getCurrentWebApplicationContext().getServletContext().getRealPath("/")+savePath;      
    // 获取当前文件类型
    String type = fileName.substring(fileName.lastIndexOf(".")+1, fileName.length());
        // 获取当前系统时间字符串
    String time = new SimpleDateFormat("yyMMddssSSS").format(new Date());
    // 构建新文件名
    String newFileName = time+"."+type;
    // 按指定路径重命名构建文件
    File savefile = new File(path,newFileName);
    // 若保存文件的文件夹不存在则创建
    if(!savefile.getParentFile().exists()){
      savefile.getParentFile().mkdirs();
    }
    System.out.println("上传文件绝对路径: "+savefile.getPath());
    file.transferTo(savefile);
    return savePath+"/"+newFileName;
  }

}


目录
相关文章
|
5月前
|
存储 Java 文件存储
|
27天前
|
前端开发 Java easyexcel
SpringBoot操作Excel实现单文件上传、多文件上传、下载、读取内容等功能
SpringBoot操作Excel实现单文件上传、多文件上传、下载、读取内容等功能
28 6
|
1月前
|
XML JSON Java
springboot文件上传,单文件上传和多文件上传,以及数据遍历和回显
本文介绍了在Spring Boot中如何实现文件上传,包括单文件和多文件上传的实现,文件上传的表单页面创建,接收上传文件的Controller层代码编写,以及上传成功后如何在页面上遍历并显示上传的文件。同时,还涉及了`MultipartFile`类的使用和`@RequestPart`注解,以及在`application.properties`中配置文件上传的相关参数。
springboot文件上传,单文件上传和多文件上传,以及数据遍历和回显
|
5月前
|
移动开发 前端开发
VForm3的文件上传方式
VForm3的文件上传方式
162 0
|
Java
java 上传 下载文件工具类
java 上传 下载文件工具类
566 0
|
搜索推荐 安全 小程序
6个十分好用的工具类网站
6个十分好用的工具类网站
184 0
6个十分好用的工具类网站
Java用transferTo方式实现文件上传
Java用transferTo方式实现文件上传
java请求文件上传接口
java请求文件上传接口