OSS上传(二)的基本代码以及必要参数讲解

上一篇文章中 我们已经对 OSS 是什么东西 以及做什么的 都有了一个初步了解,那么接下来我们来了解下基本的代码实现与构建

一 代码的基本实现:

           必要参数:java4all_file_endpoint   这个是你所购买的套餐中 OSS 的服务器地址
             java4all.file.bucketname1     这个参数就是上篇文章中我们手动创建Bucket 的时候的Bucket的名称
				※ 注意 这个名称可能会存在重复名称(与其他公司的库相同名称 所以后续会做处理)
            //AccessKey 设置 ※ AccessKey 安全系数较低建议采用RAM账号进行维护

            java4all_file_keyid (阿里云控制台获取)

            java4all_file_keysecret (阿里云控制台获取)
            
            上边这两个参数 获取详情在下边这个帮助文档里

AccessKey 如何获取 帮助文档地址:https://help.aliyun.com/knowledge_detail/38738.html?spm=5176.10695662.1996646101.searchclickresult.76cb6106o4Zc7h

application.properties 配置文件中添加

#OSS服务器地址  不同的服务器,地址不同--测试期间可以选择 后续需要根据购买的套餐选择
java4all.file.endpoint=oss-cn-beijing.aliyuncs.com
java4all.file.keyid=LTAIt7jrM2xV1UIn
java4all.file.keysecret=suoJgja7sVwJ4Wsq6YLfAc2SXTbjAb
#这个自己创建bucket时的命名,控制台创建也行,代码创建也行 mbtest-fail
java4all.file.bucketname1=mbtest-fail
#文件路径,我这里是blog
java4all.file.filehost=blog

创建一个测试类

在这里插入图片描述

import com.aliyun.oss.OSSClient;
import com.anole.demo.demo.DemoApplication;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.test.context.web.WebAppConfiguration;

import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;



/**
 * @author:manbu
 * @data 2019/6/17- 14:35
 * @TODO: OSS 存储 测试类
 * @console:
 */
@RunWith(SpringRunner.class)
// 这个注解的类名 取自于你的Springboot 启动类的名称
@SpringBootTest(classes = DemoApplication.class)

@WebAppConfiguration
public class Test {
    // 阿里云主账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维,请登录 https://ram.console.aliyun.com 创建RAM账号。
    @Value("${java4all.file.endpoint}")
     String endpoint;
    @Value("${java4all.file.keyid}")
     String accessKeyId ;
    @Value("${java4all.file.keysecret}")
     String accessKeySecret;
    /*上传字符串*/
    @org.junit.Test
    public  void test() {
     // 实例化 OSS  这里传入的参数是 Bucket的名称 以及 连接的密文 类似于数据库的 账号和密码
        OSSClient ossClient = new OSSClient(endpoint, accessKeyId, accessKeySecret);
    ※ 上传文本信息后 将会生成Text 文件 并将文本信息存放在文件中
  // 构建上传的文本信息
        String content = "Hello OSS";
        // 第一个参数 上传至存储空间 buck  第二个参数  为 上传字符串后生成的文件 需要带格式
        // 第一个参数为 建立的或者已存在的Bucket存储空间 名字是什么 第二个参数 上传后的文件名是什么
        // 第三个参数为 创建一个字节数组流 然后把文本信息放入流中 
        // 然后 通过OSS创建的Client连接 把文本推送至OSS服务器
        ossClient.putObject("mbtest-fail", "blog.text", new ByteArrayInputStream(content.getBytes()));
   //设置权限 这里是公开读 这里对接手动创建的时候 那个公开可读写性 私密可读写性的设置
            ossClient.setBucketAcl(bucketName,CannedAccessControlList.Private);
// 关闭OSSClient流。
        ossClient.shutdown();
    }
    // 上传网络流  把某个网址的网页源码上传至服务器
    @org.junit.Test
    public  void testonLine() {
    // Endpoint以杭州为例,其它Region请按实际情况填写。
    // 创建OSSClient实例。
        OSSClient ossClient = new OSSClient(endpoint, accessKeyId, accessKeySecret);
        //new URL("https://www.baidu.com/") 创建一次Url连接 openStream 方法获取连接的资源信息
        // openStream 解析文档 https://zhidao.baidu.com/question/286646799.html
        InputStream inputStream = new URL("https://www.baidu.com/").openStream();
        ossClient.putObject("mbtest-fail", "blog.text", inputStream);

  // 关闭OSSClient。
        ossClient.shutdown();
    }
     /*删除存储空间 既 Bucket   endpoint*/
    @org.junit.Test
    public  void delete() throws IOException {
// Endpoint以杭州为例,其它Region请按实际情况填写。
// 创建OSSClient实例。
        OSSClient ossClient = new OSSClient(endpoint, accessKeyId, accessKeySecret);
// 上传字符串。
        // 删除的存储空间的名字
        ossClient.deleteBucket("mbtest-fail");
// 关闭OSSClient。
        ossClient.shutdown();
    }
}

如果你有收获 请帮推荐下

下一篇文章 OSS下载的基本代码以及必要参数讲解

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值