# 初始化AmazonS3

  1. 前置要求:

  • 获取密钥对:secretID;secretKey
  • 有效Endpoint:nos-eastchina1.126.net
  • 安装SDK --> 即Maven依赖
<dependency><groupId>com.amazonaws</groupId><artifactId>aws-java-sdk-s3</artifactId><version>1.11.125</version>
</dependency>
<!--为了支持加密;无加密可不加该依赖-->
<dependency><groupId>org.bouncycastle</groupId><artifactId>bcprov-jdk15on</artifactId><version>1.55</version>
</dependency>
  • JAR 下载包含AWS Java SDK及其依赖的开发包: aws-java-sdk.zip;
  • 如果要使用客户端加密,需要加入 bcprov-jdk15on 包

实例化AmazonS3

String accessKey = "your-accesskey";
String secretKey = "your-secretKey ";
AWSCredentials credentials = new BasicAWSCredentials(accessKey,secretKey);
AmazonS3 s3 = AmazonS3ClientBuilder.standard().withCredentials(new AWSStaticCredentialsProvider(credentials)).withEndpointConfiguration(new AwsClientBuilder.EndpointConfiguration("endpoint","region")).build();//endpoint,region请指定为NOS支持的(us-east-1对应hz,us-east2对应bj)

通过 AmazonS3.createBucket创建一个桶。

这个对象存储桶可以手动在腾讯云创建,就不再上代码了!

//设置您要创建桶的名称
CreateBucketRequest request = new CreateBucketRequest(bucketName);
//设置桶的权限,如果不设置,默认为Private
request.setCannedAcl(CannedAccessControlList.PublicRead);
AmazonS3.createBucket(request);

内容上传

bucketName : 存储桶的名称

桶的名称一般为 :桶名称+bucketName(一串数字, 腾讯云生成的)

直接上传内容

//要上传文件的路径
String content = "Object content";
try {s3Client.putObject("your-bucketname","your-objectname",content);
}catch (Exception e){System.out.println(e.getMessage());
}

文件普通上传

filePath: 文件路径 + 文件名 + 后缀

your-bucketname :存储桶名称

your-objectname :存储桶的文件夹名称; 可填 “/”

//要上传文件的路径
String filePath = "your-local-file-path";
try {s3Client.putObject("your-bucketname","your-objectname", new File(filePath));
}catch (Exception e){System.out.println(e.getMessage());
}

引入的依赖包

import com.qcloud.cos.COSClient;
import com.qcloud.cos.ClientConfig;
import com.qcloud.cos.auth.BasicCOSCredentials;
import com.qcloud.cos.auth.COSCredentials;
import com.qcloud.cos.model.GetObjectRequest;
import com.qcloud.cos.model.PutObjectRequest;
import com.qcloud.cos.model.PutObjectResult;
import com.qcloud.cos.region.Region;
自己写的一段测试代码
public static void main(String[] args) {// 1 初始化用户身份信息(secretId, secretKey)。String secretId = "AKIDtc7**************************";String secretKey = "FF2as2**************************";COSCredentials cred = new BasicCOSCredentials(secretId, secretKey);// 存储桶名称String bucketName = "yjl-zwj-uploadfiletest-125786****";String key = "Test-File-MP4";String txtKey = ".node_repl_history";
// 2 设置 bucket 的区域, COS 地域的简称请参照 https://cloud.tencent.com/document/product/436/6224
// clientConfig 中包含了设置 region, https(默认 http), 超时, 代理等 set 方法, 使用可参见源码或者常见问题 Java SDK 部分。Region region = new Region("ap-beijing");ClientConfig clientConfig = new ClientConfig(region);
// 3 生成 cos 客户端。COSClient cosClient = new COSClient(cred, clientConfig);
// 指定要上传的文件File localFile = new File("F:\\TestUpFile\\movie.mp4");
// 指定要上传到 COS 上对象键; 文件名称, 经下载测试 名称最好是带上后缀;String keys = "movie.mp4";PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, keys, localFile);PutObjectResult putObjectResult = cosClient.putObject(putObjectRequest);cosClient.shutdown();}

下边的main方法跟上边的AmazonS3关联不大, AmazonS3主要时为了分块上传,后续会更新

第一次写CSDN学习资料, 如果有不对的地方请多多指教!

腾讯云 对象存储Java文件上传 学习资料整理相关推荐

  1. 腾讯 COS 对象存储 - SDK 文件上传对接,示例代码

    文章目录 腾讯 COS 对象存储 - SDK 文件上传对接,示例代码 1.SDK 2.工具类代码 3.使用示例 腾讯 COS 对象存储 - SDK 文件上传对接,示例代码 1.SDK <depe ...

  2. 微信小程序基于腾讯云对象存储的图片上传

    在使用腾讯云对象存储之前,公司一直使用的是传统的FTP的上传模式,而随着用户量的不断增加,FTP所暴露出来的问题也越来越多,1.传输效率低,上传速度慢.2.时常有上传其他文件来攻击服务器,安全上得不到 ...

  3. 阿里云对象存储OSS文件上传

    阿里云oss地址: 对象存储OSS_云存储服务_企业数据管理_存储-阿里云阿里云对象存储OSS是一款海量.安全.低成本.高可靠的云存储服务,提供12个9的数据持久性,99.995%的数据可用性和多种存 ...

  4. 华为云对象存储obs文件上传

    搭建华为云obs服务 开通obs服务 创建桶对象 注意:不用特地买资源包,学习使用的话按需付费即可[记得在自己的华为云账号充一点钱方便他自己扣费] 创建成功之后: 点击进去之后,就可以知道对我们的有用 ...

  5. 阿里云对象存储之文件上传

    第一步:创建对象存储 配置如下:引入依赖 <!--springboot的web开发依赖--><dependency><groupId>org.springframe ...

  6. 阿里云对象存储OSS图片上传并回显

    阿里云对象存储OSS图片上传并回显 Java代码实现 引入依赖 <!-- 引入阿里云OSS依赖--><dependency><groupId>com.aliyun. ...

  7. SpringBoot整合腾讯云COS对象存储实现文件上传

    企业级项目开发中都会有文件.图片.视频等文件上传并能够访问的场景,对于初学者Demo可能会直接存储在应用服务器上:对于传统项目可能会单独搭建FastDFS.MinIO等文件服务来实现存储,这种方案可能 ...

  8. 阿里云OSS对象存储(文件上传与下载)宝宝级教程

    1.注册自己的阿里云账号 2.登录账号以后,进入主页面搜索"对象存储OSS 然后可以看到如下界面 立即购买,自己学习使用可以选择购买最小的存储空间,半年即可 管理控制台,购买了存储空间以后可 ...

  9. 腾讯云cos对象存储服务文件上传api就是一个大坑

    一.介绍 对象存储服务(Cloud Object Service)是基于腾讯多年海量服务经验,对外提供的可靠.安全.易用的海量存储服务.提供多样化接入方式,以及全国部署的上传加速集群,可以无缝衔接CD ...

最新文章

  1. javascript取得鼠标的位置
  2. 微服务 Rpc和Rest协议
  3. 全国大学生智能汽车竞赛介绍-2020
  4. android 拍照不能保存图片格式,Android 拍照后保存到手机里,在相册找不到
  5. CodeForces - 1323B Count Subrectangles(思维)
  6. 计算机组成原理实验 组装实验报告,计算机组成原理实验一实验报告..doc
  7. QZEZ第一届“饭吉圆”杯程序设计竞赛
  8. linux-修改pip包的下载源-改为国内境象提升速度
  9. 如何以卫语句取代嵌套条件表达式
  10. 未从创建控件的线程访问解决办法
  11. 操作数据库(增删改)
  12. [Java] 蓝桥杯BASIC-30 基础练习 阶乘计算
  13. css修改layui的下拉框样式 js_layui的安装以及简单操作
  14. 如何从SQL Server中的SELECT更新?
  15. 奥鹏刷分软件_奥鹏学员挂积分器专业代挂积分全部免费使用
  16. 《信号与系统》解读 前言:为什么要解读《信号与系统》?
  17. 斐讯N1盒子 TTL救砖教程
  18. 终端应用安全之网络流量分析
  19. 2010.5.7 MFC中弹对话框以跟踪和程序运行中修改Static Text的Caption属性
  20. 夜神模拟器SD卡文件存储位置

热门文章

  1. 看过大佬们发的朋友圈之后,我相信:明天会更好,明年定会春暖花开
  2. 百度地图修改底图样式
  3. Unit Conversion 常用单位转换
  4. Hibernate查询性能优化技巧
  5. css 如何控制文字换行、省略
  6. 网页插入全屏背景视频
  7. 软盘是什么_什么是软盘?
  8. java多模块项目脚手架:Spring Boot + MyBatis 搭建教程
  9. 数据结构实验8:内部排序
  10. RHCSA操作第四次作业