x-file-storage一行代码进行文件上传,摆脱阿里云,腾讯云,华为云等不同云的学习,简单高效

问题:

不使用x-file-storage时如果使用某个云首先需要学习他的sdk,这样很麻烦,而x-file-storage集成了各种云的上传,只需要进行配置即可一行代码进行上传

使用

官方地址X File Storage

一行代码将文件存储到本地、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 协议的存储平台。

这里我们以阿里云为例进行举例,其他云就是复制粘贴的事

集成

1)pom.xml中引入依赖

XML 复制代码
<!-- 文件上传-->
<dependency>
    <groupId>org.dromara.x-file-storage</groupId>
    <artifactId>x-file-storage-spring</artifactId>
    <version>2.1.0</version>
</dependency>
<!-- 阿里云oss-->
<dependency>
    <groupId>com.aliyun.oss</groupId>
    <artifactId>aliyun-sdk-oss</artifactId>
    <version>3.16.1</version>
</dependency>

2)在application.yml 配置文件中先添加以下基础配置,再添加对应平台的配置

java 复制代码
# 文件上传
dromara:
  x-file-storage: #文件存储配置
    default-platform: aliyun-oss-1 #默认使用的存储平台
    thumbnail-suffix: ".min.jpg" #缩略图后缀,例如【.min.jpg】【.png】
    #对应平台的配置写在这里,注意缩进要对齐
    aliyun-oss:
      - platform: aliyun-oss-1 # 存储平台标识
        enable-storage: true  # 启用存储
        access-key: ??
        secret-key: ??
        end-point: ??
        bucket-name: ??
        domain: ?? # 访问域名,注意"/"结尾,例如:https://abc.oss-cn-shanghai.aliyuncs.com/
        base-path: dkd-images/ # 基础路径

3)在启动类上加上@EnableFileStorage注解

java 复制代码
@EnableFileStorage
@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })
public class DkdApplication
{
    public static void main(String[] args)
    {
        SpringApplication.run(DkdApplication.class, args);
       
    }
}

最后

实现一行代码实现文件上传

圈出来的就是那一行上传的代码,返回的路径信息都在fileInfo中

相关推荐
G皮T2 小时前
【云计算】云平台权限治理(六):企业项目的管理结构
阿里云·云计算·公有云·混合云·企业项目·vdc·虚拟数据中心
G皮T2 小时前
【云计算】云平台权限治理(五):VDC 的树形管理结构
阿里云·云计算·公有云·混合云·vdc·数据虚拟中心·云治理
晚霞的不甘2 小时前
华为云 DevUI 高级实战:构建可扩展的企业级中后台系统架构
系统架构·华为云
一晌小贪欢2 小时前
Streamlit应用如何部署到 Streamlit Community Cloud(保姆级教程)
开发语言·阿里云·部署·部署上线·streamlit应用·streamlit部署
晚霞的不甘2 小时前
华为云 DevUI 微前端实战:基于 Module Federation 的多团队协作架构落地
javascript·zookeeper·云原生·华为云·firefox
@YDWLCloud20 小时前
用腾讯云国际版搭建全球加速架构:5 分钟实现多地访问提速
服务器·架构·云计算·github·腾讯云
翼龙云_cloud1 天前
阿里云渠道商:什么是阿里云无影云手机?
运维·阿里云·智能手机·云计算
翼龙云_cloud1 天前
腾讯云渠道商:腾讯云轻量服务器和CVM有什么差异?
运维·服务器·云计算·php·腾讯云
向阳是我1 天前
v0.app 的 Supabase、Blob 迁移到阿里云教程
阿里云·云计算·ai编程
boonya2 天前
阿里云效一站式DevOps解决方案
阿里云·云计算·devops·阿里云效·一站式服务