当前位置: 移动技术网 > 科技>操作系统>windows > 文件上传

文件上传

2019年12月13日  | 移动技术网科技  | 我要评论

砮皂陵,万州区委书记徐海荣,旖旎仙途

文件上传

一、配置文件上传的大小限制

application.properties配置文件添加:

# 上传文件总的最大值
spring.servlet.multipart.max-request-size=10mb
# 单个文件的最大值
spring.servlet.multipart.max-file-size=10mb
  • spring.servlet.multipart.max-file-size限制单个文件的最大值
  • spring.servlet.multipart.max-request-size限制上传的多个文件的总大小

二、单文件上传

1、创建controller控制类

package com.desire.controller;

import java.io.file;
import java.io.ioexception;
import java.util.list;

import javax.servlet.http.httpservletrequest;

import org.apache.log4j.logger;
import org.springframework.web.bind.annotation.requestmapping;
import org.springframework.web.bind.annotation.requestparam;
import org.springframework.web.bind.annotation.restcontroller;
import org.springframework.web.multipart.multipartfile;
import org.springframework.web.multipart.multiparthttpservletrequest;

@restcontroller
@requestmapping("/upload")
public class upload {

    private static final logger logger = logger.getlogger(upload.class);

    @requestmapping("uploadfile")
    public string uploadfile(@requestparam("file") multipartfile file) {

        if (file.isempty()) {
            return "上传失败,请选择文件";
        }
        string filename = file.getoriginalfilename();
        system.err.println("文件名称:" + filename);
        string filepath = "d:/upload/";
        system.err.println("文件保存路径:" + filepath);
        file dest = new file(filepath + filename);
        try {
            file.transferto(dest);
            logger.info("上传成功!!!");
            return "上传成功!";
        } catch (ioexception e) {
            logger.error(e.tostring(), e);
        }
        return "上传失败!!!";
    }
}

2、如果要写jsp页面验证的话,选择文件,form的enctypemultipart/form-data

我这里直接用postman进行验证。

1.打开postman

2.填写url,选择post提交方式。

3.①选择body

​ ②选择form-data

​ ③添加key值:file

​ ④选择file

​ ⑤添加value

4、点击send运行

5、输出返回值。查看上传文件。上传成功!

三、多文件上传

在controller中添加以下方法

@requestmapping("uploadfiles")
public string uploadfiles(httpservletrequest request) {
    list<multipartfile> files = ((multiparthttpservletrequest) request).getfiles("file");
    system.out.println("选择了文件数::" + files.size());
    string filepath = "d:/upload/";
    system.err.println("文件保存路径:" + filepath);
    for (int i = 0; i < files.size(); i++) {
        multipartfile file = files.get(i);
        if (file.isempty()) {
            return "上传第" + (i++) + "个文件失败!!!";
        }
        string filename = file.getoriginalfilename();
        system.err.println("文件名称:" + filename);
        file dest = new file(filepath + filename);
        try {
            file.transferto(dest);
            logger.info("第" + (i + 1) + "个文件上传成功!");
        } catch (ioexception e) {
            logger.error(e.tostring(), e);
            return "上传第" + (i++) + "个文件失败!!!";
        }
    }
    return "上传成功!!!";
}

选择不同的文件。(注:总大小不要超过你设定的限制值)

查看上传结果

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网