java实现阿里云OSS上传下载

在这里插入图片描述

📫 作者简介:「子非我鱼」,专注于研究全栈
🔥 三连支持:欢迎 ❤️关注、👍点赞、👉收藏三连,支持一下博主~

引言

阿里云对象存储服务(OSS)是一种存储海量文件的分布式存储服务。在Java应用程序中,你可以通过使用阿里云提供的Java SDK来轻松地与OSS服务进行集成。

注:我这里使用的accessKeyId,accessKeySecret等仅作为展示,实际参数查看开通的oss服务

步骤一.:创建阿里云OSS账号

在开始之前,确保你已经在阿里云上注册了账号,并且已经创建了一个OSS存储空间。

步骤二:获取AccessKeyId和AccessKeySecret

在阿里云控制台中,获取你的AccessKeyId和AccessKeySecret,这将用于在Java应用程序中进行身份验证。

步骤三:添加阿里云OSS SDK依赖

在你的Java项目中添加阿里云OSS SDK的依赖。你可以使用Maven或Gradle等构建工具,以下是Maven的示例:

 	    <dependency>
            <groupId>com.aliyun.oss</groupId>
            <artifactId>aliyun-sdk-oss</artifactId>
            <version>3.8.0</version>
        </dependency>
步骤四:编写java代码(上传)
 /**
     * 上传音乐信息
     * @param file
     * @return
     */
    @Override
    @PostMapping("/upload/music")
    public BaseResult uploadmusic(@RequestPart MultipartFile file) throws Exception{
        // 创建oss对象
        OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
        try {
            if (ossClient.doesBucketExist(bucketName)) {
                System.out.println("您已经创建Bucket:" + bucketName + "。");
            } else {
                System.out.println("您的Bucket不存在,创建Bucket:" + bucketName + "。");
                ossClient.createBucket(bucketName);
            }
            // 要上传到的oss地址 
            String fileKey = "Music/" + file.getOriginalFilename();
            // 上传
            ossClient.putObject(bucketName, fileKey, file.getInputStream());
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            ossClient.shutdown();
        }
    }
步骤五:编写java代码(下载)
package com.czxy.music.web.test.day01;

import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.oss.model.GetObjectRequest;

import java.io.File;

/**
 * Created by zfwy on 2020/10/19.
 */
public class Myqxin01 {

    private static String endpoint = "oss-cn-beijing.aliyuncs.com";
    private static String accessKeyId = "LTAI4sdfmyNAxS6GxmPLK1Y6";
    private static String accessKeySecret = "jynYmysdfowdwLDsi9rA3QYuVBmVdO8T";
    private static String bucketName = "jjzwcswfsy";

    public static void main(String[] args) {
        // OSS存储文件的路径
        String basePath = "img/1.jpg";
        // 下载到本地的目录,自己随意存放
        String localPath = "D:\\Music\\";
        File file = new File(localPath);
        // 如果目录不存在,则创建目录
        if (!file.exists()){
            file.mkdirs();
        }
        // 创建OSSClient实例。
        OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
        // 下载OSS文件到本地文件。如果指定的本地文件存在会覆盖,不存在则新建。
        ossClient.getObject(new GetObjectRequest(bucketName, basePath), new File(localPath+"1.jpg")); // 这里的1.jpg是下载后的命名,可以更改
        // 关闭OSSClient。
        ossClient.shutdown();

    }
}
运行应用程序

通过运行你的Java应用程序,你应该能够与阿里云OSS服务进行交互,包括上传、下载和删除文件。

请注意,这只是一个简要的示例。在实际项目中,你可能需要更详细的错误处理、配置管理和安全性考虑。另外,确保你的阿里云OSS账号的访问权限正确配置,以便你的应用程序能够进行所需的操作。

  • 4
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

子非我鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值