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

阿里云对象存储OSS 速学

目录

1.创建一个Bucket

2.创建密钥AccessKey

3.在文档中心打开阿里云对象存储OSS

4.参考上传文件示例


以官网的文档为主,我的文章教学为辅

官网有详细的视频介绍:

OSS快速入门_对象存储(OSS)-阿里云帮助中心 (aliyun.com)icon-default.png?t=O83Ahttps://help.aliyun.com/zh/oss/getting-started/getting-started-with-oss?spm=a2c4g.11186623.0.0.50661668mgQrPB

个人教学OSS操作: 前三步骤是OSS准备过程,第四步骤是OSS实操示例

1.创建一个Bucket

将读写权限设置为公共读

创建后从中获取:endpoint(创建的bucket选择的区域)、bucketName(所创建的bucket)

2.创建密钥AccessKey

保存好密钥AccessKey

创建后从中获取:accessKeyId(所创建密钥AccessKeyId)、accessKeySecret(所创建密钥AccessKeySecret)

3.在文档中心打开阿里云对象存储OSS

在SDK示例中,根据官方文档去写

快速使用OSS SDK_对象存储(OSS)-阿里云帮助中心 (aliyun.com)icon-default.png?t=O83Ahttps://help.aliyun.com/zh/oss/getting-started/sdk-quick-start?spm=a2c4g.11186623.0.0.17813167mZiK7d

4.参考上传文件示例

以下是阿里云Oss工具类上传文件的示例代码,只需要补充对应的

endpoint(创建的bucket选择的区域)、accessKeyId(所创建密钥AccessKey)、accessKeySecret(所创建密钥AccessKey)、bucketName(所创建的bucket)即可直接使用;

简单介绍一下,下面的使用方式,upload方法需要传递两个参数,一个是文件,另一个是为了便于分类选择的模块名,这样上传后就会根据对应的模块名分为对应的目录,而文件将存储于对应的目录名中。注意:上传文件后会返回文件的url路径,这个可以存储到数据库中,这样访问该文件就直接访问该url即可。



/**
 * 阿里云 OSS 工具类
 */
@Component
public class AliOSSUtils {

    private String endpoint = "https://oss-cn-guangzhou.aliyuncs.com";
    private String accessKeyId = "";
    private String accessKeySecret = "";
    private String bucketName = "";

    /**
     * 实现上传图片到OSS
     */
    public String upload(MultipartFile file,String directory) throws IOException {
        // 获取上传的文件的输入流
        InputStream inputStream = file.getInputStream();

        // 避免文件覆盖
        String originalFilename = file.getOriginalFilename();
        String fileName = directory + "/" + UUID.randomUUID().toString() + originalFilename.substring(originalFilename.lastIndexOf("."));

        //上传文件到 OSS
        OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
        ossClient.putObject(bucketName, fileName, inputStream);

        //文件访问路径
        String url = endpoint.split("//")[0] + "//" + bucketName + "." + endpoint.split("//")[1] + "/" + fileName;

        // 关闭ossClient
        ossClient.shutdown();
        return url;// 把上传到oss的路径返回
    }


}


http://www.kler.cn/news/333313.html

相关文章:

  • 分支和循环语句(2)
  • 三篇文章速通JavaSE到SpringBoot框架 (下) Maven、 接口、MyBatis、Spring、SpringMVC、SpringBoot
  • Elasticsearch:使用 LLM 实现传统搜索自动化
  • 从零开始手写STL库:multimap
  • 亚马逊 Bedrock 平台也能使用Llama 3.2 模型了
  • 聊一聊 C#中有趣的 SourceGenerator生成器
  • 常见排序算法汇总
  • 算法笔记(八)——字符串
  • CSS 尺寸 (Dimension)
  • 五子棋双人对战项目(3)——匹配模块
  • django的路由分发
  • ansible用户管理模块和剧本
  • 【Linux】深入理解 Linux 系统命令:网络配置、压缩打包与其他常用命令
  • 芝法酱学习笔记(0.6)——nexus与maven私库
  • ReactJSX使用
  • 【环境配置】科研小白Windows下安装Git
  • 【LeetCode】每日一题 2024_10_5 完成旅途的最少时间(二分答案)
  • 大厂面试真题-介绍以下Docker的Overlay网络
  • 【漏洞复现】泛微OA E-Office do_excel.php 任意文件写入漏洞
  • 模拟算法(1)_替换所有的问号