当前位置: 首页 > news >正文

spring boot文件上传之x-file-storage

spring boot文件上传之x-file-storage

今天看到一个文件上传的开源组件x-file-storage,官方地址如下:

https://x-file-storage.xuyanwu.cn/#/

该组件官网是这样介绍的,如下:

一行代码将文件存储到本地、FTP、SFTP、WebDAV、阿里云 OSS、华为云 OBS、七牛云 Kodo、腾讯云 COS、百度云 BOS、又拍云 USS、MinIO、 Amazon S3、GoogleCloud Storage、FastDFS、 Azure Blob Storage、Cloudflare R2、金山云 KS3、美团云 MSS、京东云 OSS、天翼云 OOS、移动 云EOS、沃云 OSS、 网易数帆 NOS、Ucloud US3、青云 QingStor、平安云 OBS、首云 OSS、IBM COS、其它兼容 S3 协议的存储平台。查看 所有支持的存储平台

具体学习的话可以详细参考该组件网站给的示例

这里以springboot3为例,文件上传到本地做了一个简单测试,代码如下

第一步,引入pom依赖

		<dependency><groupId>org.dromara.x-file-storage</groupId><artifactId>x-file-storage-spring</artifactId><version>2.2.1</version></dependency>

第二步,配置yaml

dromara:x-file-storage: default-platform: local-plus-1 thumbnail-suffix: ".min.jpg" local-plus:- platform: local-plus-1 enable-storage: true  enable-access: true domain: http://127.0.0.1:8080/file/ base-path: local-plus/path-patterns: /file/** storage-path: D:/Temp/ 

第三步,编写controller

@RestController
public class FileController {@Autowiredprivate FileStorageService fileStorageService;/*** 上传文件*/@PostMapping("/upload")public FileInfo upload(@RequestParam("file")MultipartFile file) {String originalFilename = file.getOriginalFilename();FileInfo upload = fileStorageService.of(file).setSaveFilename(originalFilename).upload();return upload;}
}

第四步,启动类上添加开启启用该组件注解

@SpringBootApplication
@EnableFileStorage
public class XFileStorageApplication {public static void main(String[] args) {SpringApplication.run(XFileStorageApplication.class, args);}}

最后启动项目进行测试,使用postman进行发送请求
在这里插入图片描述

然后到 yaml 配置文件指定的位置进行查看
在这里插入图片描述


http://www.mrgr.cn/news/34644.html

相关文章:

  • 搭建Python2和Python3虚拟环境
  • 如何使用Django写个接口,然后postman中调用
  • 笔记 | image may have poor performance,or fail,if run via emulation
  • UniApp 应用、页面与组件的生命周期详解
  • 解决表格出现滚动条样式错乱问题
  • FastGPT部署通义千问Qwen和智谱glm模型|OneAPI配置免费的第三方API
  • Django 数据库配置以及字段设置详解
  • 计算机毕业设计之:基于微信小程序的疫苗预约系统的设计与实现(源码+文档+讲解)
  • 论文大杀器!分享4款ai论文写作工具软件
  • Dify创建自定义工具,调用ASP.NET Core WebAPI时的注意事项(出现错误:Reached maximum retries (3) for URL ...)
  • python爬虫案例——抓取链家租房信息
  • JSON合并工具
  • 苍穹外卖学习笔记(九)
  • 微信抢红包设计
  • Vue开发前端图片上传给java后端
  • 19_Python中的上下文管理器
  • QT中添加资源文件(一看就会)
  • Linux常用命令
  • 开关频率与谐振频率对应的模态图
  • 一行命令,一分钟轻松搞定SSL证书自动续期
  • 类中的特殊内容
  • 华为高级交换技术笔记 2024-2025
  • 计算机组成原理==初识二进制运算
  • 研究生三年概括
  • Elasticsearch案例
  • Python中的“打开与关闭文件”:从入门到精通