zoukankan      html  css  js  c++  java
  • 云存储开通并使用以及测试

    1、支付宝扫码登陆阿里云官网;

    官网地址:https://account.aliyun.com/login/login.htm
    image
    点击产品,选择对象存储
    image
    进去之后,点击立即开通
    image
    如果已经开通过,会这样提示(那你直接点击控制台就可以)
    image
    如果是首次使用阿里云网站,那么需要绑定手机号等一些个人信息,可能还需要实名认证,之后再点击立即开通,就可以了
    因为我已经开通过,而且已经创建过一个Bucket,所以界面是这样的
    image
    下面演示新建一个Bucket;(Bucket是存储空间,推荐一个项目一个Bucket)
    点击Bucket列表,再点击创建Bucket;
    image
    建议按照我这样选择(地域就近选择就好),如果你很有钱,当我没说;
    image
    点击确定
    image
    点击以后再说
    image
    这就是刚才创建的一个Bucket
    image

    2、在oss里测试文件上传;

    点击左侧文件管理,点击文件上传
    image
    点击扫描文件(选择一个文件)
    image
    文件就会显示在下方
    image
    点击上传文件,右侧显示任务列表,提示上传成功
    image
    再次点击文件管理,会显示你刚才上传的文件
    image
    点击右侧的详情,有一个url地址
    image
    复制到浏览器直接打开,然后左下角就会自动下载了
    image

    3、原生java-sdk测试上传文件到oss

    • 导入maven依赖
    <dependency>
        <groupId>com.aliyun.oss</groupId>
        <artifactId>aliyun-sdk-oss</artifactId>
        <version>3.5.0</version>
    </dependency>
    
    • 示例代码
    @Test
    public void test() throws FileNotFoundException {
        String endPoint = "xxx";
        String accessKeyId = "xxxx";
        String accessKeySecret = "xxx";
        OSS ossClient = new OSSClientBuilder().build(endPoint, accessKeyId, accessKeySecret);
        InputStream inputStream = new FileInputStream("D:\xxx\1.jpg");
        ossClient.putObject("gulimall-kaka","xxx.jpg",inputStream);
    
        ossClient.shutdown();
        System.out.println("上传完成。");
    }
    

    参数解释:
    endPoint是访问域名:(刚才创建Bucket的时候,会有显示,找到自己的地址)
    image
    accessKeyId和accessKeySecret:
    因为直接输入支付宝账号密码不靠谱,所以阿里云用了一个子账号来登录,会生成这两个字段;鼠标移到右上角头像上,点击AccessKey管理
    image
    点击开始使用子账户AssessKey管理(如果是第一次访问,需要先开通RAM访问控制,按照提示来即可)
    image
    点击创建用户
    image
    输入登录名称,显示名称以及勾上编程访问,会收到一个手机验证码验证,输入即可。
    image
    点击确定,然后就可以看到这两个字段了,放到代码里即可
    image
    new FileInputStream(""):参数是自己本地文件的地址;
    putObject(三个参数):第一个参数是刚才创建的hello-wtf,第二个参数是自定义一个名字;

    不过现在阿里云上文件上传的sdk已经不是这个版本了,参考文档即可 https://help.aliyun.com/document_detail/32009.html

    4、用springcloudalibaba-oss实现对象存储

    引入依赖(2.1.0.RELEASE版本)

    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alicloud-oss</artifactId>
    </dependency>
    

    /////////////////////////////////////////////
    这里引入依赖有个恶心的问题:
    刚开始怎么都导入不了,因为现在官网 https://github.com/alibaba/aliyun-spring-boot/tree/master/aliyun-spring-boot-samples/aliyun-oss-spring-boot-sample ,已经不是这么写了;用官网最新的话,怎么都引入不了,
    你还得修改springboot和springcloud的版本;所以我用了我项目中用的2.1.0.RELEASE版本,但是需要修改settings的镜像mirror属性,这样就可以引入了。
    image
    现在最新的依赖是这样的,artifactId都变了
    image
    /////////////////////////////////////////////
    在application.yml中引入配置信息(都是刚才RAM权限控制里生成的)

    spring:
      cloud:
        alicloud:
          access-key: xxx
          secret-key: xxx
          oss:
            endpoint: xxx
    

    直接测试:(这里用@Autowired会爆红,但是不影响使用,强迫症可以使用@Resource)

    @Autowired
    OSSClient ossClient;
    @Test
    public void test1() throws FileNotFoundException {
        InputStream inputStream = new FileInputStream("E:\wallpapercache\img\465f19833579e9332a130328bf2015b0.jpg");
        ossClient.putObject("gulimall-kaka","kaka_01.jpg",inputStream);
        ossClient.shutdown();
        System.out.println("上传完成。");
    }
    
    

    查看oss管理控制台:(刚才的文件都已经上传,而且复制url在浏览器中,图片自动下载,打开确认完好。)
    image

  • 相关阅读:
    浅析如何让 (a === 1 && a === 2 && a === 3) 返回 true
    浅析单点登录的三种实现方式
    浅析瀑布流布局原理及实现方式
    浅析Java中三目运算符可能产生的坑
    【转】IO
    [转]gomonkey学习
    从sha1的计算例子,理解计算机的数据表示?16进制输出?二进制输出??
    [转]Golang第三方包应该如何安装--在线和离线
    【转】goconvey使用
    go import 时 点号 和下划线的区别
  • 原文地址:https://www.cnblogs.com/kaka-qiqi/p/14673094.html
Copyright © 2011-2022 走看看