1.修改application.properties配置文件,设置保存磁盘地址(方便以后修改)

upload.path = /Users/myname/Documents/upload/

地址自定义即可,这是我本机地址,Windows可设置:d:\\upload 自定义即可

2.创建ApiController

@RestController
@RequestMapping(value = "/api")
public class ApiController {@Value("${upload.path}") private String uploadPath;@RequestMapping(value = "/uploads", method = RequestMethod.POST)public @ResponseBodyString uploads(HttpServletRequest request, MultipartFile[] file) {String filename = "";try {//上传目录地址String uploadDir = uploadPath;//如果目录不存在,自动创建文件夹File dir = new File(uploadDir);if (!dir.exists()) {dir.mkdir();}//遍历文件数组执行上传for (int i = 0; i < file.length; i++) {if (file[i] != null) {//调用上传方法filename = executeUpload(uploadDir, file[i]);}}} catch (Exception e) {//打印错误堆栈信息e.printStackTrace();return "上传失败";}return filename;}private String executeUpload(String uploadDir, MultipartFile file) throws Exception {//文件后缀名String suffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));//上传文件名String filename = UUID.randomUUID() + suffix;//服务器端保存的文件对象File serverFile = new File(uploadDir + filename);if(!serverFile.exists()) {//先得到文件的上级目录,并创建上级目录,在创建文件serverFile.getParentFile().mkdir();try {//创建文件serverFile.createNewFile();} catch (IOException e) {e.printStackTrace();}}//将上传的文件写入到服务器端文件内file.transferTo(serverFile);return filename;}
}

3.前端ajax提交问题即可:

uploadFile(event){//上传文件const _this=this;let formData=new FormData();let _file = event.target.files[0];let size = _file.size;let maxsize = 4*1024*1024;//4M  if(size > maxsize){$("#uploadbox").addClass("error");this.clearInput();return;}formData.append('file',_file);$.ajax({type: "POST",url:  "/api/uploads",data: formData,contentType:"application/json",processData:false,contentType:false,async: true,success: function(data) {console.log(data)},error: function(data) {console.log(data)}});
}

springboot 上传文件保存在本地磁盘相关推荐

  1. SpringBoot上传文件到 后端服务器 或 云服务器(七牛云、阿里云、腾讯云等等都是一样的操作步骤)

    文章目录 一.新建SpringBoot项目 1.pom.xml 2.application.yml 3.配置Swagger3 4.统一返回类Result 5.统一异常响应ErrorCode 二.上传文 ...

  2. springboot上传文件到阿里云

    springboot上传文件到OSS 前提声明,文章借鉴了https://blog.csdn.net/wonder_dog/article/details/81152307#commentsedit博 ...

  3. Java上传文件保存到指定路径

    Java上传文件保存到指定路径 上代码 @PostMapping("/file-upload")@ApiOperation(value = "上传swagger.json ...

  4. springboot上传文件MultipartFile.transferTo()

    根据springMvc教程,改写的springboot文件上传功能,实际上很简单,核心使用的是MultipartFile类: org.springframework.web.multipart.Mul ...

  5. springboot上传文件过大,全局异常捕获,客户端没有返回值

    springboot上传文件过大,全局异常捕获,客户端没有返回值 参考文章: (1)springboot上传文件过大,全局异常捕获,客户端没有返回值 (2)https://www.cnblogs.co ...

  6. springBoot上传文件时MultipartFile报空问题解决方法

    springBoot上传文件时MultipartFile报空问题解决方法 参考文章: (1)springBoot上传文件时MultipartFile报空问题解决方法 (2)https://www.cn ...

  7. SpringBoot上传文件并储存到本地(记录)

    主要是通过[MultipartFile]作为参数类型来实现文件上传的. 1.相关controller代码如下: @RequestMapping(value = "/upload", ...

  8. SpringBoot 上传文件(单个、多个文件)

    说明 用Spring的 MultipartFile在Springboot 中实现上传单个文件(多个文件) 多文件上传,大量文件时,防止文件名相同,重新修改存储文件名. html <!DOCTYP ...

  9. springboot上传文件临时文件夹找不到不能成功上传问题

    错误信息1:org.springframework.web.multipart.MultipartException: Could not parse multipart servlet reques ...

最新文章

  1. 市值达 58 亿美元,吴恩达的在线教育平台 Coursera 正式上市
  2. 一篇比较好的介绍(两种线程模式)
  3. 【Java】 Thinking in Java 4.8 练习9
  4. LiveVideoStack线上分享第三季(十三):腾讯云LiteAVSDK演进之路
  5. chkconfig: 2345 20 80
  6. xpath helper小工具的安装
  7. Java开发笔记(一百三十七)JavaFX的标签
  8. R语言建立ARIMA模型预测数据
  9. 2014年9月16日----暴风影音笔试题
  10. 调用微信扫码接口实现扫一扫功能
  11. SiamRPN代码讲解,推理测试讲解
  12. Linux 0.11-shell 程序读取你的命令-43
  13. 谈谈我对元宇宙的理解
  14. openssl升级解决系统安全漏洞问题
  15. iis8+php环境搭建问题
  16. 苹果消息推送服务教程:第二部分(共2部分)
  17. 什么是弹性云服务器?
  18. 大白话5分钟带你走进人工智能-第30节集成学习之Boosting方式和Adaboost
  19. 访问网络内不同ip段的计算机,[转]问题:话说两台电脑在一个局域网内,把它们的IP地址都设成不同的网段,请问,它们可不可以通讯?如...
  20. 利用apache+wsgi运行你的django网站 - Open Idea - 博客大巴

热门文章

  1. 未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序搜索
  2. 自定义checkbox大小(注:用CSS的ZOOM属性 )
  3. CentOS下openssh版本降级
  4. 计算机常用技巧及快捷键
  5. VBS操作IE ---(【当不使用IE时】可以使用Chrome插件,自定义JS插件操作浏览器)
  6. css中的伪类 之 first-child
  7. 安装mysql数据库及问题解决方法
  8. Vue+element 解决浏览器自动填充记住的账号密码问题
  9. 为什么JavaScript仅在IE中打开开发人员工具一次后才能工作?
  10. 什么是Android上的“上下文”?