Spring Boot基础教程12-web应用开发-文件上传
一、Spring Boot 默认使用springMVC包装好的解析器进行上传
二、添加代码
<form method="POST" enctype="multipart/form-data" action="/file/upload">
文件:<input type="file" name="roncooFile" />
<input type="submit" value="上传" />
</form>
@Controller
@RequestMapping(value = "/file")
public class FileController {
private static final Logger logger = LoggerFactory.getLogger(FileController.class);
@RequestMapping(value = "upload")
@ResponseBody
public String upload(@RequestParam("roncooFile") MultipartFile file) {
if (file.isEmpty()) {
return "文件为空";
}
// 获取文件名
String fileName = file.getOriginalFilename();
logger.info("上传的文件名为:" + fileName);
// 获取文件的后缀名
String suffixName = fileName.substring(fileName.lastIndexOf("."));
logger.info("上传的后缀名为:" + suffixName);
// 文件上传路径
String filePath = "d:/roncoo/ttt/";
// 解决中文问题,liunx下中文路径,图片显示问题
// fileName = UUID.randomUUID() + suffixName;
File dest = new File(filePath + fileName);
// 检测是否存在目录
if (!dest.getParentFile().exists()) {
dest.getParentFile().mkdirs();
}
try {
file.transferTo(dest);
return "上传成功";
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return "上传失败";
}
}
三、配置
spring.http.multipart.enabled=true #默认支持文件上传.
spring.http.multipart.file-size-threshold=0 #支持文件写入磁盘.
spring.http.multipart.location= # 上传文件的临时目录
spring.http.multipart.max-file-size=1Mb # 最大支持文件大小
spring.http.multipart.max-request-size=10Mb # 最大支持请求大小

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
深度解剖dubbo源码
-----------学习dubbo源码,能给你带来什么好处?----------- 1.提升SOA的微服务架构设计能力 通过读dubbo源码是一条非常不错的通往SOA架构设计之路,毕竟SOA的服务治理就是dubbo首先提出来的,比起你去看市面上的SOA微服务架构的书籍,学到的架构原理要更丰富更有深度。 2.提升自己在部门团队的技术影响力 你所在的部门团队如果使用了dubbo框架,必然需要懂dubbo底层核心的人;如果你把dubbo源码的架构原理掌握好,一般出现dubbo的疑难杂症,只要你参与探讨和解决,你自然是这个团队的核心程序员或是重要的程序员。 ----------------------duboo底层核心知识点------------------------------ tcp的单工、半双工、全双工、编码、解码、粘包、拆包。网络通信netty nio 阻塞、非阻塞、异步、同步、线程池、boss线程、work线程。集群负载均衡directory、router、cluster、loadbalance。zookeeper与zkClient、持久节点 和 临时节点。服务的本地暴露和远程...
- 下一篇
程序员/产品/运营应该怎样学习数据分析?[转]
很多学习数据分析的同学也都有这样一种困惑“为什么学了那么多工具,还是不会数据分析?”,原因无外乎两个,一是只学到了碎片的知识,没有建立知识之间的连接,无法形式自己的知识体系,二是缺乏实践,导致无法形成“知行合一”的工作技能。 知识超载和碎片化 当代人都面临两个问题——信息超载和知识碎片化。 信息超载老话题不多说了,讲几个数据: 全世界每天有4000本书出版,超过4亿个字; 纽约时报一天的文字量等于牛顿同时代的人一生的阅读量; 一个专业领域,每天大概有200个公众号正在注册,有近1000篇文字正在产生…… 过去杂家、博物家在现代社会已经不可能存在,即使有,也干不过谷歌度娘。 结论1:知识的储存能力,人类早就被电脑完胜了,知识的搜索和链接能力,才是学习的核心竞争力。 另一个趋势也很明显:知识碎片化。这个碎片化从3个方面开始—— 首先时间和空间被打碎,移动手机允许你在三站地铁里听完一本书; 其次被打碎的是信息,如果你翻知乎、今日头条或者某个博客,你并不会像看一本书一样,知道前面一章讲什么的,后面即将讲什么,除了标题党,你根本对下一个博客、内容毫无预期,只能被动接受; 最糟糕的其实是知识结构碎...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS7设置SWAP分区,小内存服务器的救世主
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS8编译安装MySQL8.0.19
- Hadoop3单机部署,实现最简伪集群
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长