SpringBoot入门十九,简单文件上传

项目基本配置参考SpringBoot入门一,使用myEclipse新建一个SpringBoot项目,使用myEclipse新建一个SpringBoot项目即可。现在来给项目添加一个文件上传支持,添加方式非常简单,仅需两步即可,具体内容如下:

创新互联建站 - 成都服务器托管,四川服务器租用,成都服务器租用,四川网通托管,绵阳服务器托管,德阳服务器托管,遂宁服务器托管,绵阳服务器托管,四川云主机,成都云主机,西南云主机,成都服务器托管,西南服务器托管,四川/成都大带宽,机柜大带宽租用·托管,四川老牌IDC服务商

1. pom.xml添加以下配置信息




    commons-io
    commons-io
    2.4




    commons-fileupload
    commons-fileupload
    1.3.3

2. 配置文件中添加以下配置信息

# ----------------文件传输---------------
## 单个数据的大小
spring.servlet.multipart.max-file-size:200MB
## 总数据的大小
spring.servlet.multipart.max-request-size:500MB

3. 编写文件上传工具类

import java.io.File;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

import org.springframework.web.multipart.MultipartFile;

public class ToolUpLoad {
    /**
     * @描述:上传文件到临时目录
     * 
     * @param file 上传的文件
     * @param tempPath 上传文件存放路径
     * @return 
     */
    public static Map fileUpload(MultipartFile file, String tempPath) {
        Map resultMap = new HashMap();
        if (null == file) {
            resultMap.put("result", false);
            resultMap.put("msg", "获取上传文件失败,请检查file上传组件的名称是否正确");
        } else if (file.isEmpty()) {
            resultMap.put("result", false);
            resultMap.put("msg", "没有选择文件");
        } else {
            File fileDir = new File(tempPath);
            if (!fileDir.exists()) {
                fileDir.mkdirs();
            }
            String filename = file.getOriginalFilename();
            filename = tempPath + DateUtil.getNowDateString("YYYYMMddHHmmss") + "_" + filename;
            File dest = new File(filename);
            //保存文件
            try {
                file.transferTo(dest);
                resultMap.put("result", true);
                resultMap.put("msg", "上传成功");
                resultMap.put("filePath", "filename");
            } catch (IOException e) {
                e.printStackTrace();
                resultMap.put("result", false);
                resultMap.put("msg", "文件上传发生异常");
            }
        }
        return resultMap;
    }
}

4. 文件上传

方式一:

请求页面

文件名:

SpringBoot入门十九,简单文件上传

Controller

/**
 * @描述:文件上传
 * 请求页面file组件的name必须为"file"才可以获取到信息,否则为null
 * @param file
 * @return 
 */
@RequestMapping("upload")
@ResponseBody
public String upload(MultipartFile file){
    // 文件上传
    Map resultMap = ToolUpLoad.fileUpload(file);
    return JSONObject.toJSONString(resultMap)
}

方式二:

请求页面

文件名:

SpringBoot入门十九,简单文件上传

Controller

/**
 * @描述:文件上传
 * 请求页面的file组件的name为需要和接收参数名称一致
 * @param file
 * @return 
 */
@RequestMapping("uploadTwo")
@ResponseBody
    public String uploadTwo(@RequestParam("bgImg") MultipartFile file) {
    // 文件上传
    Map resultMap = ToolUpLoad.fileUpload(file);
    return JSONObject.toJSONString(resultMap)
}

网页名称:SpringBoot入门十九,简单文件上传
本文网址:http://scyanting.com/article/ieigjs.html