博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SpringBoot的文件上传
阅读量:5099 次
发布时间:2019-06-13

本文共 2235 字,大约阅读时间需要 7 分钟。

先在src/main/resources下新建一个static目录用以存放html页面,简单的html页面如下

1  2  3  4 
5 SpringBoot文件上传 6 7 8
9 上传文件:10
11
12
13
14 15

注意一点时,form表单的提交方法为 method = "post"

然后就是Controller类的编写,如下:

1 package com.example.uploadfile.springbootupload.cont; 2  3 import java.io.File; 4 import java.util.HashMap; 5 import java.util.Map; 6  7 import org.springframework.web.bind.annotation.RequestMapping; 8 import org.springframework.web.bind.annotation.RestController; 9 import org.springframework.web.multipart.MultipartFile;10 11 /**12  * 13  * @author SpringBoot文件上传14  */15 @RestController // 这个类下所有的方法的返回值都会自动进行json格式的转换16 public class FileUploadController {17     /*18      * 处理文件上传19      */20 21     // 路由映射22     @RequestMapping("/FileUploadController")23     public Map
fileUpload(MultipartFile filename) throws Exception { // 这里的MultipartFile参数的命名最好和html中的一样(也就是filename)免去转换操作24 System.out.print(filename.getOriginalFilename()); // 打印文件的原始名称25 // 将文件进行保存26 filename.transferTo(new File("e:/" + filename.getOriginalFilename()));27 Map
map = new HashMap<>(); // 处理异常28 map.put("msg", "ok");29 return map;30 31 }32 33 }

关于这个Controller类,上传文件成功后在控制台打印文件名,然后再将该文件保存至E盘

接着就是启动类的编写,如下:

package com.example.uploadfile.springbootupload;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;/** * * @author  SpringBoot文件上传的启动类 */@SpringBootApplicationpublic class AppFile {    public static void main(String[] args) {        // TODO Auto-generated method stub        SpringApplication.run(AppFile.class, args);    }}

 

需要注意一点的是,“Make sure that your main class is in a root package above other classes.”

 

然后构建运行就可以执行上传文件的操作了;

但是当你上传的文件大小超过10MB时,就会出现以下的错误。

 

由控制台的输出可知,上传的文件超过了默认大小,所以要在application.properties中修改一下配置信息;

一开始参照其他博客的修改是这样的

单个文件最大的大小spring.http.multipart.maxFileSize=200MB 上传的总文件的大小spring.http.multipart.maxRequestSize=200MB

但是还是出错,后来在上看到这个:

 

就试着修改成以下的这样

spring.servlet.multipart.maxFileSize=200MBspring.servlet.multipart.maxRequestSize=200MB

再次运行时就阔以了!

而且也提供了很详细的指导!

 

转载于:https://www.cnblogs.com/Guhongying/p/10521205.html

你可能感兴趣的文章
Window7上搭建symfony开发环境(PEAR)
查看>>
ResolveUrl的用法
查看>>
Linux内核态、用户态简介与IntelCPU特权级别--Ring0-3
查看>>
第23月第24天 git命令 .git-credentials git rm --cached git stash clear
查看>>
java SE :标准输入/输出
查看>>
一些方便系统诊断的bash函数
查看>>
【转载】基于vw等viewport视区相对单位的响应式排版和布局
查看>>
<转>关于MFC的多线程类 CSemaphore,CMutex,CCriticalSection,CEvent
查看>>
jquery中ajax返回值无法传递到上层函数
查看>>
css3之transform-origin
查看>>
[转]JavaScript快速检测浏览器对CSS3特性的支持
查看>>
Master选举原理
查看>>
[ JAVA编程 ] double类型计算精度丢失问题及解决方法
查看>>
小别离
查看>>
微信小程序-发起 HTTPS 请求
查看>>
WPF动画设置1(转)
查看>>
backgound-attachment属性学习
查看>>
个人作业——关于K米的产品案例分析
查看>>
基于node/mongo的App Docker化测试环境搭建
查看>>
java web 中base64传输的坑
查看>>