行业知识
JAVA如何下载OSS存储引擎中的资源(文档、图片、视频)【建议收藏】
2026-10-25 22:29:00
来源:互联网转载
AliyunOSS存储引擎,在前面的一篇博客OSS存储引擎如何使用以及如何添加图片【建议收藏】-CSDN博客中,已经成功学会了如何开通以及如何通过java代码上传资源到OSS.
那么接下来这篇博客就记录一下如何通过java从OSS中获取资源:
1、OSS中资源准备:
我在OSS中,存放了一个视频,一个txt文档,一个图片,在下面我们就通过代码去获取这些资源。
2、获取txt文本资源:
代码:
import com.aliyun.oss.OSS;import com.aliyun.oss.OSSClientBuilder;import com.aliyun.oss.model.GetObjectRequest;import java.io.*;/** * @Author: xjx * @Date: 2024/01/24/10:27 * @Description: 阿里云OSS将文件下载到本地 */public class OSSGetTest { //端点,我这里的端点是成都 public static String endpoint = "http://oss-cn-chengdu.aliyuncs.com"; //阿里云主账号AccessKeyID(访问ID)、accessKeySecret(访问密钥) public static String accessKeyId = "你的访问ID"; public static String accessKeySecret = "你的访问密钥"; //桶名字 public static String bucketName = "你的Bucket名字"; //Bucket里面的URI【需要替换成自己的Bucket里面的URI】 public static String objectName = "image/no.txt"; //保存在本地的位置URI【需要自己更改指定路径】 public static String pathName = "D:/A2DH/no.txt"; public static void main(String[] args) throws IOException { //创建OSS实例 OSS build = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); //判断bucket是否存在 boolean bucketExist = build.doesBucketExist(bucketName); if(!bucketExist){ return; } //判断下载的文件是否存在 boolean fileExist = build.doesObjectExist(bucketName, objectName); if (!fileExist){ return; } //下载到指定的位置 build.getObject(new GetObjectRequest(bucketName,objectName),new File(pathName)); //关闭OSSclient build.shutdown(); }} 效果:
在目标目录里面是能够看到下载的文件以及记事本里面也是有效果,成功获取!
3、获取图片资源:
代码:
import com.aliyun.oss.OSS;import com.aliyun.oss.OSSClientBuilder;import com.aliyun.oss.model.GetObjectRequest;import java.io.*;/** * @Author: xjx * @Date: 2024/01/24/10:27 * @Description: 阿里云OSS将文件下载到本地 */public class OSSGetTest { //端点,我这里的端点是成都 public static String endpoint = "http://oss-cn-chengdu.aliyuncs.com"; //阿里云主账号AccessKeyID(访问ID)、accessKeySecret(访问密钥) public static String accessKeyId = "你的访问ID"; public static String accessKeySecret = "你的访问密钥"; //桶名字 public static String bucketName = "你的Bucket名字"; //Bucket里面的URI【需要替换成自己的Bucket里面的URI】 public static String objectName = "image/00004-3806264314.png"; //保存在本地的位置URI【需要自己更改指定路径】 public static String pathName = "D:/A2DH/a.png"; public static void main(String[] args) throws IOException { //创建OSS实例 OSS build = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); //判断bucket是否存在 boolean bucketExist = build.doesBucketExist(bucketName); if(!bucketExist){ return; } //判断下载的文件是否存在 boolean fileExist = build.doesObjectExist(bucketName, objectName); if (!fileExist){ return; } //下载到指定的位置 build.getObject(new GetObjectRequest(bucketName,objectName),new File(pathName)); //关闭OSSclient build.shutdown(); }} 效果:
4、获取视频资源
代码:
import com.aliyun.oss.OSS;import com.aliyun.oss.OSSClientBuilder;import com.aliyun.oss.model.GetObjectRequest;import java.io.*;/** * @Author: xjx * @Date: 2024/01/24/10:27 * @Description: 阿里云OSS将文件下载到本地 */public class OSSGetTest { //端点,我这里的端点是成都 public static String endpoint = "http://oss-cn-chengdu.aliyuncs.com"; //阿里云主账号AccessKeyID(访问ID)、accessKeySecret(访问密钥) public static String accessKeyId = "你的访问ID"; public static String accessKeySecret = "你的访问密钥"; //桶名字 public static String bucketName = "你的Bucket名字"; //Bucket里面的URI【需要替换成自己的Bucket里面的URI】 public static String objectName = "image/no.mp4"; //保存在本地的位置URI【需要自己更改指定路径】 public static String pathName = "D:/A2DH/b.mp4"; public static void main(String[] args) throws IOException { //创建OSS实例 OSS build = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); //判断bucket是否存在 boolean bucketExist = build.doesBucketExist(bucketName); if(!bucketExist){ return; } //判断下载的文件是否存在 boolean fileExist = build.doesObjectExist(bucketName, objectName); if (!fileExist){ return; } //下载到指定的位置 build.getObject(new GetObjectRequest(bucketName,objectName),new File(pathName)); //关闭OSSclient build.shutdown(); }} 效果:
到这里,通过以上代码案例,成功对文本、视频、图片这些资源进行了获取,通过实战会发现其实代码都是一样的,唯一改变的就是两个东西:
-
Bucket中的资源URI
-
保存在本地位置中的那个文件后缀
所以大家之后需要获取资源只需要将这两个位置进行更改便可用一套代码去实现资源下载。