创建Bucket(一)

  1. 定义常量值:endpoint(访问域名)
    accessKeyId (ram账号访问秘钥id)
    accessKeySecret(ram子账号秘钥密码)

  2. 创建Bucket
    createBucket(String bucketName, int storageClass, int dataRedundancyType, int cannedACL)
    输入参数 bucketName:桶名称 storageClass:存储类型
    dataRedundancyType:数据容灾类型
    cannedACL:数据读写权限
    我们除了第一个参数是用户自己定义的字符串外,其他三个参数都是该存储空间的配置属性
    我们在传入时采用int型 具体取值如下
    存储类型:1:标准 2:低频 3:归档 4:冷归档
    容灾类型:0:默认无 1:有
    读写权限:0:默认私有 1:公共读 2:公共读写
    输出:出参:int 1:成功 0:失败

public int  createBucket(String bucketName, int storageClass, int dataRedundancyType, int cannedACL){//        System.out.println(bucketName + " " + storageClass + " " + dataRedundancyType + " " + cannedACL);//1,参数列表:bucketName:桶名称   storageClass:存储类型//          dataRedundancyType:数据容灾类型//          cannedACL:数据读写权限OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
try{if(ossClient.doesBucketExist(bucketName)){System.out.println("您已创建Bucket:" + bucketName + "。");return 0;}else {System.out.println("您的Bucket不存在,创建Bucket:" + bucketName + "。");
        CreateBucketRequest bucketRequest = new CreateBucketRequest(bucketName);switch (storageClass){case 1:bucketRequest.setStorageClass(StorageClass.Standard);break;case 2:bucketRequest.setStorageClass(StorageClass.IA);break;case 3:bucketRequest.setStorageClass(StorageClass.Archive);case 4:bucketRequest.setStorageClass(StorageClass.ColdArchive);}switch (dataRedundancyType){case 0:bucketRequest.setDataRedundancyType(DataRedundancyType.LRS);break;case 1:bucketRequest.setDataRedundancyType(DataRedundancyType.ZRS);break;}switch (cannedACL){case 1:bucketRequest.setCannedACL(CannedAccessControlList.Private);break;case 2:bucketRequest.setCannedACL(CannedAccessControlList.PublicRead);case 3:bucketRequest.setCannedACL(CannedAccessControlList.PublicReadWrite);}ossClient.createBucket(bucketRequest);}BucketInfo info = ossClient.getBucketInfo(bucketName);System.out.println("Bucket" + bucketName + "的信息如下: ");System.out.println("\t数据中心:" + info.getBucket().getLocation());System.out.println("\t创建时间: " + info.getBucket().getCreationDate());System.out.println("\t用户标志:" + info.getBucket().getOwner());
} catch (OSSException oe){oe.printStackTrace();return 0;
}  catch (Exception e){e.printStackTrace();return 0;
} finally{ossClient.shutdown();
}return 1;

}

3.列举存储空间
listAllBucket( ):
不需要参数,直接返回所有的Bucket
出参:List

  public List<Bucket> listAllBuckets(){OSS ossClient = new OSSClientBuilder().build(endpoint,accessKeyId,accessKeySecret);List<Bucket> buckets = ossClient.listBuckets();for (Bucket bucket : buckets){System.out.println(" - " + bucket.getName());}ossClient.shutdown();return buckets;}

列举有参数的存储空间
listRequestBucket():
前缀(Prefix):String,如果没有,前端传空字符串“”
起始 (Market):String,列举Marker之后的所有Bucket,若无,传空字符串“”
最大值(maxKeys):int, ,默认为100,如果不输入,前端传0
出参:List

//列举有参数的Bucketpublic List<Bucket> listRequestBuckets(String Prefix, String Marker, int maxKeys) {//调用该方法需要三个参数中至少有一个不为空//Prefix代表列举Bucket的前缀(如果没有,前端传空字符串)//Marker代表列举的起始位置(如果没有,前端传空字符串)//maxKeys表示列举空间的指定个数,默认值为100,如果传过来0转换成100OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);ListBucketsRequest listBucketsRequest = new ListBucketsRequest();try {if (!Prefix.isEmpty()) {listBucketsRequest.setPrefix(Prefix);}if (!Marker.isEmpty()) {listBucketsRequest.setMarker(Marker);}if (maxKeys == 0) {listBucketsRequest.setMaxKeys(100);} else if (maxKeys != 0) {listBucketsRequest.setMaxKeys(maxKeys);}} catch (OSSException oe) {return null;} catch (Exception e){return null;}BucketList bucketList = ossClient.listBuckets(listBucketsRequest);for(Bucket bucket : bucketList.getBucketList()){System.out.println(" - " + bucket.getName());}ossClient.shutdown();return bucketList.getBucketList();}
  1. 判断bucket是否存在
    输入参数:bucketName
    输出参数:布尔值 :存在 true
    不存在 false
 public boolean doesBucketExist(String bucketName){OSS ossClient = new OSSClientBuilder().build(endpoint,accessKeyId,accessKeySecret);boolean exists = ossClient.doesBucketExist(bucketName);System.out.println(exists);ossClient.shutdown();return exists;}
  1. 获取地域信息
    getBucketLocation(String bucketName)
public String getBucketLocation(String bucketName){//输入参数:bucektNameOSS ossClient = new OSSClientBuilder().build(endpoint,accessKeyId,accessKeySecret);String location = ossClient.getBucketLocation(bucketName);System.out.println(location);return location;}
  1. 获取存储空间信息
    getBucketInfo(String bucketName)

    输入参数:bucketName
    输出结果:一个map,包含信息:
    存储地域(Location)
    创建日期 (CreationDate)
    拥有者信息(Owner)
    权限信息(Grants)
    数据容灾类型(DataRedundancyType)

//获取存储空间的信息public Map<String,String> getBucketInfo(String bucketName){//输入参数:bucketName//返回值:包含地域、创建日期、拥有者信息、权限信息、容灾类型的一个map集合OSS ossClient = new OSSClientBuilder().build(endpoint,accessKeyId,accessKeySecret);BucketInfo info = ossClient.getBucketInfo(bucketName);String location = info.getBucket().getLocation();String creationDate = info.getBucket().getCreationDate().toString();String owner = info.getBucket().getOwner().toString();String grants = info.getGrants().toString();String dataRedundancyType = info.getDataRedundancyType().toString();Map<String, String> map = new HashMap<>();map.put("Location", location);map.put("CreationDate", creationDate);map.put("Owner", owner);map.put("Grants", grants);map.put("DataRedundancyType", dataRedundancyType);ossClient.shutdown();return map;}

7.获取存储空间访问权限

public String getBucketAcl(String bucketName){OSS ossClient = new OSSClientBuilder().build(endpoint,accessKeyId,accessKeySecret);AccessControlList bucketAcl = ossClient.getBucketAcl(bucketName);System.out.println(bucketAcl.toString());ossClient.shutdown();return bucketAcl.toString();}

8.设置存储空间访问权限

public String setBucketAcl(String bucketName, int acl){//输入的acl只能是1 || 2 || 3OSS ossClient = new OSSClientBuilder().build(endpoint,accessKeyId,accessKeySecret);try{switch (acl){case 1:ossClient.setBucketAcl(bucketName,CannedAccessControlList.Private);break;case 2:ossClient.setBucketAcl(bucketName, CannedAccessControlList.PublicRead);break;case 3:ossClient.setBucketAcl(bucketName, CannedAccessControlList.PublicReadWrite);break;}} catch (OSSException e) {e.printStackTrace();return "false";} catch (ClientException e) {e.printStackTrace();return "false";}ossClient.shutdown();return "设置存储空间访问权限成功";}

9.删除存储空间

public String deleteBucket(String bucketName){OSS ossClient = new OSSClientBuilder().build(endpoint,accessKeyId,accessKeySecret);try {ossClient.deleteBucket(bucketName);} catch (OSSException e) {e.printStackTrace();return "false";} catch (ClientException e) {e.printStackTrace();return "false";}ossClient.shutdown();return "删除存储空间成功";}

阿里云创建管理bucket(一)相关推荐

  1. 阿里云创建AccessKey 和 Access Key Secert

    阿里云创建AccessKey 和 Access Key Secert 首先去阿里云官网获取Access Key和AccessKey Secret 打开控制台 鼠标放在右上角头像上 点击AccessKe ...

  2. 按量收费云盘_阿里云创建按量付费云盘

    在实际运维的过程中,很多时候可能因为服务器的硬盘不够用,需要挂载更多的硬盘以满足业务的要求,但有时候有些业务是临时性的,或者实际需求中增加的硬盘需求时间比较短,例如几个小时或者几天的情况.此时如果使用 ...

  3. 关于云服务器介绍?什么是阿里云服务器管理?

    转载链接:http://blog.itpub.net/69946374/viewspace-2657585/ 什么是云服务器?云服务器(Elastic Compute Service, ECS)是一种 ...

  4. 阿里云创建云端数据库

    阿里云创建云端数据库 从小白开始创建云端数据库.希望可以帮到大家(白嫖一个月) 1.浏览器中搜索阿里云(https://cn.aliyun.com/) 2.依次点击:产品-数据库----云数据库 Po ...

  5. 阿里云创建AccessKey

    阿里云创建 AccessKey 一.创建账户子用户 进入阿里云官网进入控制台 TIP: 传送门 → [访问阿里云官网] 在右上角找到头像并鼠标悬浮选择[访问控制] 进入在左侧边栏选择[用户]后并点击[ ...

  6. 阿里云创建docker免费个人容器镜像托管(私服)服务

    创建容器镜像服务 进入主页:容器镜像服务 选择个人实例: 点击创建个人版: 创建完成,点击设置Registry登录密码: 创建命名空间(全网唯一): 创建镜像仓库: 选择本地仓库: 创建成功: 操作指 ...

  7. 拨号云服务器怎么自动配置网关_教你在阿里云创建增强型云网关

    Hello,大家好,今天我们聊的话题依旧和云有关,本期的主角是阿里云.阿里云创立于2009年,是全球领先的云计算及人工智能科技公司,致力于以在线公共服务的方式,提供安全.可靠的计算和数据处理能力,让计 ...

  8. 如何使用阿里云创建镜像和实例

    1.百度搜索"阿里云"登录,点击右上角的"控制台". 2.点击"产品与服务",选择"对象存储OSS". 3.点击&quo ...

  9. 使用阿里云创建个人云盘

    首先打开阿里云官网,选择对象存储OSS. 开通这个服务,进入控制台新建Bucket,这里要注意区域和存储类型创建了是不可以改的,不过可以创建多个Bucket,华北二是北京,华北一是青岛,选择距离你最近 ...

最新文章

  1. web开发(二十一)之自定义拦截器的使用
  2. Active Directory操作主机详解
  3. java 中调用window系统中的文件,或者执行命令(shell、.CMD、.EXE)并获取返回值
  4. 文献记录(part6)--Dynamic Tree Cut in-depth description, tests and applications
  5. Linux下做一个arp欺骗程序6,LINUX下防ARP欺骗攻击
  6. Android 系统(210)----Android的.so文件你需要知道那些知识
  7. SparkStreaming之mapWithState
  8. java的设计模式之单列设计模式
  9. AFM测试探针简介-科学指南针
  10. 网上书城项目-LoadRunner压力测试
  11. 电影台词搜索引擎,英语学习和视频创作的必备神器
  12. 商业分析的50个网站和分析方法
  13. Java开发报表——Grid++Report 报表设计器
  14. Java 编程问题:八、函数式编程-基础和设计模式
  15. 【Flink】Flink SQL 读取 CSV 文件
  16. 很早以前就想要的东西,没想到今天会“妙手偶得”
  17. 【Auto.js脚本】淘宝618集喵币列车活动 自动浏览任务
  18. 字符集本地化(locale)与输入法系列讲座-----(3) truetype造字程序详解
  19. Python find()方法
  20. 程序化物件放置(procedural placement)之泊松硬盘采样(poisson disk sampling)

热门文章

  1. java jcr_java – 通过JCR实现基于标签的搜索系统的最佳方式,如Modeshape
  2. Groovy(Java笨狗)系列--datatypes
  3. html怎么制作气泡,制作CSS气泡框
  4. 使用Jquery、HTML、CSS、JS实现下拉菜单列表
  5. Spring Boot 基础教程:集成 Knife4j
  6. 2020.9.30 PYTHON 自复习笔记
  7. 查找字符串中某个字符出现的次数
  8. cocos2dx3.0戳青蛙游戏(打地鼠)
  9. cocos2d-x游戏开发 跑酷(四) 关联物理世界
  10. debian 安装wine