首页 > 其他分享 >springboot多文件上传代码实例及解析

springboot多文件上传代码实例及解析

时间:2023-11-23 11:55:49浏览次数:31  
标签:文件 springboot filePath 实例 file e4% 上传 String

这篇文章主要介绍了springboot多文件上传代码实例及解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

一说明

spingMVC支持文件上传,我们通过Apach 的 commons-fileupload 包的CommonsMultipartResolver 去实现了
spingMVC的MultipartResolver 。

本文章的示例是个简单的多文件上传,根据不同的业务自行修改。

二pom.xlm

<dependencies>     <dependency>       <groupId>commons-fileupload</groupId>       <artifactId>commons-fileupload</artifactId>       <version>1.3.3</version>     </dependency>     <dependency>       <groupId>org.springframework.boot</groupId>       <artifactId>spring-boot-starter-web</artifactId>     </dependency>   </dependencies>

三 application.yml

spring:  servlet:   multipart:    max-file-size: 200MB #单个文件上传大小    max-request-size: 600MB #连续上传文件大小   youku1327:  file:  root:   path: "C:\\mydata\\generator\\version06\\" #存储路径

四controller

/**  * @Author lsc  * @Description <p> </p>  * @Date 2019/10/2 20:58  * @Version 1.0  */ @RestController public class FileUploadController {     @Value("${youku1327.file.root.path}")   private String fileRootPath;     @PostMapping("/file/upload")   public String fileUpload(@RequestParam("files")MultipartFile[] files){     String filePath = "";     // 多文件上传     for (MultipartFile file : files){       // 上传简单文件名       String originalFilename = file.getOriginalFilename();       // 存储路径        filePath = new StringBuilder(fileRootPath)           .append(System.currentTimeMillis())           .append(originalFilename)           .toString();       try {         // 保存文件         file.transferTo(new File(filePath));       catch (IOException e) {         e.printStackTrace();       }     }     return filePath;   } }

五启动类

/**  * @Author lsc  * @Description <p> </p>  * @Date 2019/10/2 20:54  * @Version 1.0  */ @SpringBootApplication public class FileUploadApplication {   public static void main(String[] args) {     SpringApplication.run(FileUploadApplication.class,args);   } }

六测试

发送http的post请求,使用表单形式,key为files需要与MultipartFile[] 的参数名称一致,挑选两个文件,发送成功后,会看到最后返回的文件路径;

 

打开保存的文件路径可以发现已经实现文件上传。

 

以上就是本文的全部内容,希望对大家的学习有所帮助

 

参考文章:http://blog.ncmem.com/wordpress/2023/11/23/springboot%e5%a4%9a%e6%96%87%e4%bb%b6%e4%b8%8a%e4%bc%a0%e4%bb%a3%e7%a0%81%e5%ae%9e%e4%be%8b%e5%8f%8a%e8%a7%a3%e6%9e%90/

欢迎入群一起讨论

 

 

标签:文件,springboot,filePath,实例,file,e4%,上传,String
From: https://www.cnblogs.com/songsu/p/17851251.html

相关文章

  • web图片上传 【flask+vue2】
    直接上传代码demofromflaskimportFlask,request,jsonifyimportosfromflask_corsimportCORS#导入CORS模块#文件存储的目录UPLOAD_FOLDER='uploads'ALLOWED_EXTENSIONS={'png','jpg','jpeg','gif'}app=Flask(_......
  • SpringBoot注入时设置《多例》
    SpringBoot设置多例1、准备数据测试接口packagecom.cc.jschdemo.springmultiton;/***<p>spring多例测试</p>**@author--*@since2023/11/23*/publicinterfaceISpringMultiton{}测试接口实现(注入spring)packagecom.cc.jschdemo.springmultiton;i......
  • Springboot全局异常处理
    自定义异常枚举类枚举类用于定义自定义的异常类型,对应自定义错误码,错误信息,状态码publicenumErrorCodeEnum{USERINFO_EXCEPTION(10001,HttpStatus.INTERNAL_SERVER_ERROR,"UserInfoException"),AUTHORIZATION_EXCEPTION(10002,HttpStatus.UNAUTHORIZED,"Authoriza......
  • 使用SpringBoot实现文件的上传
    使用SpringBoot实现文件的上传springboot可以直接使用org.springframework.web.multipart.MultipartFile所以非常容易实现一、首先是简单的单文件上传先在index.html页面下写一个简单的form表单<h1>单文件</h1><formclass="form-signin"th:action="@{/SingleFile/upload}"......
  • springboot如何监控各种指标?
    以springboot2.7.17为例: 1:新增如下依赖:<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency> 然后,在你的配置文件(如 application.properties)中添加以下配......
  • springboot tomcat连接数监控
     直接问文心一言:  ......
  • 实例讲解:NodeJS 操作 Kafka
    本人是C#出身的程序员,c#很简单就能实现,有需要的可以加我私聊。但是就目前流行的开发语言,尤其是面向web方向应用的,我感觉就是Nodejs最简单了。下面介绍:本文将会介绍在windows环境下启动Kafka,并通过nodejs作为客户端,生产和消费消息。步骤一,Kafka需要java运行时,先安装配置java环境。下......
  • 【AGC】鸿蒙应用软件包上传问题解析
    ​【问题背景】近期收到了一些反馈,一些鸿蒙元服务开发者在发布应用市场的过程中,上传.app包时遇到了不同的报错,导致上传失败,下面来看一下这些报错的具体原因,如何正确打包上传。 【问题描述1】HarmonyOS元服务软件包上传后,提示“软件包解析失败,请重新上传”,错误详情(5)​​​【......
  • 本地MinIO存储服务Java远程调用上传文件
    MinIO是一款高性能、分布式的对象存储系统,它可以100%的运行在标准硬件上,即X86等低成本机器也能够很好的运行MinIO。它的优点包括高性能、高可用性、易于部署和管理、支持多租户等。Cpolar内网穿透提供了更高的安全性和隐私保护,通过使用加密通信通道,Cpolar技术可以确保数据传输的......
  • uniapp app上传图片并设置超过10m进行图片压缩
    组件页面<template>   <viewclass="upload-wrapper">      <viewv-if="pictureUrl.length">         <viewclass="preview"v-for="(item,index)inpictureUrl":key='index'>        ......