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业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
SpringBoot2.0开发WebSocket应用完整示例
环境说明:SpringBoot版本2.0.3.RELEASE(不同版本可能有些差异),Gradle版本4.5.1(这个版本不太关键) WebSocket是微信小程序的基础,是应用广泛、前景很好的新技术,目前大热。这里简要介绍一下使用SpringBoot框架开发WebSocket应用的基础代码。基本原理不讲了,代码原理见函数注释,画个简单的图说明基本流程,如下图所示。 一、引用支撑包 compile('org.springframework.boot:spring-boot-starter-websocket') 二、WebSocket服务端 packagecom.wallimn.iteye.sp.asset.bus.websocket; importjava.io.IOException; importjava.util.concurrent.CopyOnWriteArraySet; importjava.util.concurrent.atomic.AtomicInteger; importjavax.websocket.OnClose; importjavax.websoc...
-
下一篇
程序员/产品/运营应该怎样学习数据分析?[转]
很多学习数据分析的同学也都有这样一种困惑“为什么学了那么多工具,还是不会数据分析?”,原因无外乎两个,一是只学到了碎片的知识,没有建立知识之间的连接,无法形式自己的知识体系,二是缺乏实践,导致无法形成“知行合一”的工作技能。 知识超载和碎片化 当代人都面临两个问题——信息超载和知识碎片化。 信息超载老话题不多说了,讲几个数据: 全世界每天有4000本书出版,超过4亿个字; 纽约时报一天的文字量等于牛顿同时代的人一生的阅读量; 一个专业领域,每天大概有200个公众号正在注册,有近1000篇文字正在产生…… 过去杂家、博物家在现代社会已经不可能存在,即使有,也干不过谷歌度娘。 结论1:知识的储存能力,人类早就被电脑完胜了,知识的搜索和链接能力,才是学习的核心竞争力。 另一个趋势也很明显:知识碎片化。这个碎片化从3个方面开始—— 首先时间和空间被打碎,移动手机允许你在三站地铁里听完一本书; 其次被打碎的是信息,如果你翻知乎、今日头条或者某个博客,你并不会像看一本书一样,知道前面一章讲什么的,后面即将讲什么,除了标题党,你根本对下一个博客、内容毫无预期,只能被动接受; 最糟糕的其实是知识结构碎...
相关文章
文章评论
共有0条评论来说两句吧...

微信收款码
支付宝收款码