AWS下S3之java开发

本文章仅作为个人笔记
S3官方网站:https://s3.console.aws.amazon.com/s3/home
S3官方开发网站:https://aws.amazon.com/cn/documentation/s3/
S3官方java开发网站:http://docs.aws.amazon.com/zh_cn/AmazonS3/latest/dev/RetrievingObjectUsingJava.html (具体详情需要在网页内查找)
S3官方权限设置文档:http://docs.aws.amazon.com/zh_cn/sdk-for-java/v1/developer-guide/setup-credentials.html (与大部分AWS服务一样,做完一次权限设置后即可畅想所有当前用户拥有的服务)
#记住一定要在本地生成证书确保S3权限(~/.aws/credentials)(C:\Users\USERNAME.aws\credentials)格式如下:
image.png
#另外在开发前,一定要在aws官网开通S3服务及创建相应的S3桶.
S3使用(gradle项目)
1.项目build.gradle文件的dependencies选项下添加(compile ‘com.amazonaws:aws-java-sdk-s3:1.11.172’)依赖
2.AWSCredentials credentials = new ProfileCredentialsProvider().getCredentials();//获取AWSCredentials对象用于获取S3对象
3.AmazonS3 amazonS3 = AmazonS3Client.builder().withRegion(Regions.US_WEST_2).withCredentials(new AWSStaticCredentialsProvider(credentials)).build();//获取AmazonS3对象,此对象便可以开始操作S3
4.ObjectListing objectListing = amazonS3.listObjects(bucketName, folder);//根据桶名及文件夹名获取该桶该文件夹操作对象
5.List s3ObjectSummaries = objectListing.getObjectSummaries();//根据操作对象列出所有文件对象,单个对象使用s3ObjectSummarie.getKey()即可获取此文件完整路径,配合桶名可以用于操作
6.S3Object object = amazonS3.getObject(new GetObjectRequest(bucketName, fileName));//根据桶名文件名获取文件真实对象
7.InputStream inputStream = object.getObjectContent();//获取对象流,可使用此流下载S3文件
8.amazonS3.putObject(bucketName, fileName, file);//根据桶名及文件名及文件对象上传文件到S3
9.最后附上个人aws简单demo的git地址 https://github.com/makai554892700/AWSDemo.git

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页