首页 > 其他分享 >SpringCloud实现浏览器端大文件分块上传

SpringCloud实现浏览器端大文件分块上传

时间:2023-07-20 16:13:58浏览次数:31  
标签:COMMENT 编辑 分块 端大 SpringCloud 编译 源码 spring 下载

 1.创建SpringBoot项目

本项目采用springboot + mybatis-plus +jquery +thymeleaf组成

2.项目流程图

 

在这里插入图片描述

编辑

3.在pom中添加以下依赖

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 <!--lombok依赖-->   <dependency>    <groupId>org.projectlombok</groupId>    <artifactId>lombok</artifactId>    <optional>true</optional>   </dependency>   <!--文件上传依赖-->   <dependency>    <groupId>commons-io</groupId>    <artifactId>commons-io</artifactId>    <version>2.4</version>   </dependency>   <dependency>    <groupId>commons-fileupload</groupId>    <artifactId>commons-fileupload</artifactId>    <version>1.3.1</version>   </dependency>     <!-- mysql的依赖 -->   <dependency>    <groupId>mysql</groupId>    <artifactId>mysql-connector-java</artifactId>    <scope>runtime</scope>   </dependency>     <!-- mybatis-plus依赖 -->   <dependency>    <groupId>com.baomidou</groupId>    <artifactId>mybatis-plus-boot-starter</artifactId>    <version>3.3.2</version>   </dependency>

4.在application.properties配置文件中

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 spring.resources.static-locations=classpath:/static server.port=8000     #设置上传图片的路径 file.basepath=D:/BaiduNetdiskDownload/   # 设置单个文件大小 spring.servlet.multipart.max-file-size= 50MB # 设置单次请求文件的总大小 spring.servlet.multipart.max-request-size= 50MB     ##设置要连接的mysql数据库 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.url=jdbc:mysql://localhost:3306/test?characterEncoding=utf8&autoReconnect=true&useSSL=false&serverTimezone=Asia/Shanghai spring.datasource.username=root spring.datasource.password=root

5.在数据库创建表

 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 create table file (  id INTEGER primary key AUTO_INCREMENT comment 'id',  path varchar(100) not null COMMENT '相对路径',  name varchar(100) COMMENT '文件名',  suffix varchar(10) COMMENT '文件后缀',  size int COMMENT '文件大小|字节B',  created_at BIGINT(20) COMMENT '文件创建时间',  updated_at bigint(20) COMMENT '文件修改时间',  shard_index int comment '已上传分片',  shard_size int COMMENT '分片大小|B',  shard_total int COMMENT '分片总数',  file_key varchar(100) COMMENT '文件标识' )


将静态资源复制到项目中

 

 

 

编辑

在页面中引入组件文件并初始化组件

您可以在任何页面引入组件并进行使用,将上传组件作为通用基础组件来使用。

 

编辑

2.后端引入

引入后端逻辑实现模块

 

编辑

引入接口模块

您可以修改这些接口实现逻辑,以满足实际的业务需求。

 

编辑

3.引入配置文件

 

编辑

确保配置文件加载路径正确

 

编辑

 

效果展示:

​编辑

​编辑

​编辑

​编辑

 

视频演示:

 

windows控件安装,,linux-deb控件包安装,linux-rpm控件包安装,php7测试,php5测试,vue-cli-测试,asp.net-IIS测试,asp.net-阿里云(oss)测试,asp.net-华为云(obs)测试,jsp-springboot测试,ActiveX(x86)源码编译,ActiveX(x64)源码编译,Windows(npapi)源码编译,macOS源码编译,Linux(x86_64)源码编译,Linux(arm)源码编译,Linux(mips-uos)源码编译,Linux(mips-kylin-涉密环境)源码编译,sm4加密传输,压缩传输,

示例下载地址

源代码文档

asp.net源码下载jsp-springboot源码下载jsp-eclipse源码下载jsp-myeclipse源码下载php源码下载csharp-winform源码下载vue-cli源码下载c++源码下载

详细配置信息及思路


标签:COMMENT,编辑,分块,端大,SpringCloud,编译,源码,spring,下载
From: https://www.cnblogs.com/songsu/p/17568650.html

相关文章

  • jsp实现浏览器端大文件分块上传
    ​ 对于大文件的处理,无论是用户端还是服务端,如果一次性进行读取发送、接收都是不可取,很容易导致内存问题。所以对于大文件上传,采用切块分段上传,从上传的效率来看,利用多线程并发上传能够达到最大效率。 本文是基于springboot+vue实现的文件上传,本文主要介绍服务端实现文件......
  • springcloud stream kafka实践
    SpringCloudStream是SpringCloud提供的一个用于构建消息驱动的微服务的框架。它简化了消息系统(如Kafka,rabbitMQ)的使用和集成,使开发者可以更专注于业务逻辑的实现。项目结构如下 一、移入依赖创建一个springbootweb项目引入依赖1<properties>2<java.version>1......
  • 线性代数4 初等变换、初等矩阵、分块矩阵、方阵行列式
    1.1初等变换和初等矩阵的概念初等变换的概念:初等变换并不是一个运算操作,而是一类对矩阵的操作的统称对于m×n矩阵A:(1)倍乘:对A的某行或某列元素乘上一个非零常数k(2)互换:互换A的某两列或某两行元素的位置(3)倍加:将A的某行或某列元素的k倍加到另一行或列上这三种变换统称为初等(行......
  • springcloud - kafka实践
    springcloud可以通过KafkaTemplate来发布消息,让后消费者使用来订阅@KafkaListener主题消息。一、添加依赖1<dependencyManagement>2<dependencies>3<dependency>4<groupId>org.springframework.cloud</groupId>5<artifactId&g......
  • 分块学习笔记
    分块学习笔记区间加:对于每个区间\([l,r]\),如果\(lid=rid\),那么就暴力加。否则中间块加到\(sum[i]\)和\(tag[i]\)内,其余散块暴力加到\(a[i]\)内。注意不会存在最后一个块长不为\(len\)的情况,因为\(rid-1\)总是不会在最后一个块内。区间和:对于每个区间\([l,r]\),如......
  • springcloud是什么
    1、它其实spring公布的微服务开发的一套模式或者说规范2、比如通常来说,它规定包含注册中心、网关、配置中心这套基本组件,它还需要rpc远程调用组件包括feign、dubbo、grpc等等,以及他们的负载均衡策略和熔断措施3、它还可以包含健康度监控、性能监控和链路追踪等等 ......
  • Java实现浏览器端大文件分块上传
    ​文件上传是最古老的互联网操作之一,20多年来几乎没有怎么变化,还是操作麻烦、缺乏交互、用户体验差。一、前端代码英国程序员RemySharp总结了这些新的接口 ,本文在他的基础之上,讨论在前端采用HTML5的API,对文件上传进行渐进式增强:    * iframe上传 * ajax上传......
  • 分块1
    P2801tomato简要题意区间加,区间查询大于\(k\)的元素数量。题解发现\(Polylog\)无法胜任,考虑分块,块内维护有序序列即可。recordLOJ6546简单的数列题简要题意给定两个序列\(\{a_n\},\{b_n\}\),要求支持交换\(b_x,b_y\)对\(\{a_n\}\)区间加求\(\max_{i=l}^r\{a......
  • vue实现浏览器端大文件分片上传
    ​ 以ASP.NETCoreWebAPI 作后端 API ,用 Vue 构建前端页面,用 Axios 从前端访问后端 API,包括文件的上传和下载。 准备文件上传的API #region 文件上传  可以带参数        [HttpPost("upload")]        publicJsonResultuploadProject(I......
  • 前端实现浏览器端大文件分片上传
    ​ javaweb上传文件上传文件的jsp中的部分上传文件同样可以使用form表单向后端发请求,也可以使用ajax向后端发请求    1.通过form表单向后端发送请求         <formid="postForm"action="${pageContext.request.contextPath}/UploadServlet"method="post"e......