目录
前言:
Java 实现华为云服务器图片上传和下载的示例代码:
图片下载
Java 实现阿里云服务器图片上传和下载的示例代码:
图片下载
Java 实现腾讯云服务器图片上传和下载的示例代码:
图片下载
依赖:
前言:
记录一下小笔记
Java 实现华为云服务器图片上传和下载的示例代码:
public void uploadFile(String filePath, String objectName) {// 构造华为云的身份认证信息String ak = "你的Access Key ID";String sk = "你的Secret Access Key";String projectId = "你的项目ID";String regionName = "cn-north-4";BasicCredentials auth = new BasicCredentials(ak, sk, projectId, regionName);// 构造OBS客户端实例OBSClient obsClient = new OBSClient(auth);// 构造上传请求PutObjectRequest request = new PutObjectRequest();request.setBucketName("你的Bucket名称");request.setObjectKey(objectName); // 指定对象名称request.setFile(new File(filePath)); // 指定上传文件的路径// 执行上传操作PutObjectResult result = obsClient.putObject(request);System.out.println("上传成功!");
}
- 示例代码中,需要替换掉的参数包括:
Access Key ID
、Secret Access Key
、项目ID
、cn-north-4
、Bucket名称
、上传文件的路径
和指定对象名称
。其中,指定对象名称
是你在上传文件时指定的对象名称,需要确保它在当前 Bucket 中是唯一的。
图片下载
public void downloadFile(String objectName, String targetFilePath) {// 构造华为云的身份认证信息String ak = "你的Access Key ID";String sk = "你的Secret Access Key";String projectId = "你的项目ID";String regionName = "cn-north-4";BasicCredentials auth = new BasicCredentials(ak, sk, projectId, regionName);// 构造OBS客户端实例OBSClient obsClient = new OBSClient(auth);// 构造下载请求GetObjectRequest request = new GetObjectRequest();request.setBucketName("你的Bucket名称");request.setObjectKey(objectName); // 指定对象名称// 执行下载操作try (OBSObject obsObject = obsClient.getObject(request)) {InputStream inputStream = obsObject.getObjectContent(); // 获取文件输入流FileOutputStream outputStream = new FileOutputStream(targetFilePath); // 指定下载文件的路径byte[] buffer = new byte[1024];int length;while ((length = inputStream.read(buffer)) > 0) {outputStream.write(buffer, 0, length);}outputStream.close();System.out.println("下载成功!");} catch (IOException e) {e.printStackTrace();}
}
- 示例代码中,需要替换掉的参数包括:
Access Key ID
、Secret Access Key
、项目ID
、cn-north-4
、Bucket名称
、指定对象名称
和下载文件的路径
。其中,指定对象名称
是你要下载的对象名称,下载文件的路径
是你要保存文件的本地路径。 - 注意,在执行完下载操作后,需要手动关闭文件输入流和文件输出流,避免内存泄漏
Java 实现阿里云服务器图片上传和下载的示例代码:
public void uploadFile(String filePath, String objectName) {// 构造阿里云的身份认证信息String accessKeyId = "你的Access Key ID";String accessKeySecret = "你的Access Key Secret";String endpoint = "你的OSS Endpoint";OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);// 构造上传请求PutObjectRequest request = new PutObjectRequest("你的Bucket名称", objectName, new File(filePath));// 执行上传操作ossClient.putObject(request);System.out.println("上传成功!");// 关闭OSS客户端ossClient.shutdown();
}
- 在这个示例代码中,需要替换掉的参数包括:
Access Key ID
、Access Key Secret
、OSS Endpoint
、Bucket名称
、上传文件的路径
和指定对象名称
。其中,指定对象名称
是你在上传文件时指定的对象名称,需要确保它在当前 Bucket 中是唯一的。
图片下载
public void downloadFile(String objectName, String targetFilePath) {// 构造阿里云的身份认证信息String accessKeyId = "你的Access Key ID";String accessKeySecret = "你的Access Key Secret";String endpoint = "你的OSS Endpoint";OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);// 构造下载请求GetObjectRequest request = new GetObjectRequest("你的Bucket名称", objectName);// 执行下载操作try (OSSObject ossObject = ossClient.getObject(request)) {InputStream inputStream = ossObject.getObjectContent(); // 获取文件输入流FileOutputStream outputStream = new FileOutputStream(targetFilePath); // 指定下载文件的路径byte[] buffer = new byte[1024];int length;while ((length = inputStream.read(buffer)) > 0) {outputStream.write(buffer, 0, length);}outputStream.close();System.out.println("下载成功!");} catch (IOException e) {e.printStackTrace();}// 关闭OSS客户端ossClient.shutdown();
}
- 示例代码中,需要替换掉的参数包括:
Access Key ID
、Access Key Secret
、OSS Endpoint
、Bucket名称
、指定对象名称
和下载文件的路径
。其中,指定对象名称
是你要下载的对象名称,下载文件的路径
是你要保存文件的本地路径。 - 注意,在执行完下载操作后,需要手动关闭文件输入流和文件输出流,避免内存泄漏。
Java 实现腾讯云服务器图片上传和下载的示例代码:
public void uploadFile(String filePath, String objectName) {// 构造腾讯云的身份认证信息String secretId = "你的Secret ID";String secretKey = "你的Secret Key";String region = "ap-guangzhou";COSCredentials cred = new BasicCOSCredentials(secretId, secretKey);ClientConfig clientConfig = new ClientConfig(new Region(region));COSClient cosClient = new COSClient(cred, clientConfig);// 构造上传请求File localFile = new File(filePath);PutObjectRequest request = new PutObjectRequest("你的Bucket名称", objectName, localFile);// 执行上传操作cosClient.putObject(request);System.out.println("上传成功!");// 关闭COS客户端cosClient.shutdown();
}
- 示例代码中,需要替换掉的参数包括:
Secret ID
、Secret Key
、ap-guangzhou
、Bucket名称
、上传文件的路径
和指定对象名称
。其中,指定对象名称
是你在上传文件时指定的对象名称,需要确保它在当前 Bucket 中是唯一的。
图片下载
public void downloadFile(String objectName, String targetFilePath) {// 构造腾讯云的身份认证信息String secretId = "你的Secret ID";String secretKey = "你的Secret Key";String region = "ap-guangzhou";COSCredentials cred = new BasicCOSCredentials(secretId, secretKey);ClientConfig clientConfig = new ClientConfig(new Region(region));COSClient cosClient = new COSClient(cred, clientConfig);// 构造下载请求GetObjectRequest request = new GetObjectRequest("你的Bucket名称", objectName);// 执行下载操作COSObject cosObject = cosClient.getObject(request);InputStream inputStream = cosObject.getObjectContent(); // 获取文件输入流try (FileOutputStream outputStream = new FileOutputStream(targetFilePath)) { // 指定下载文件的路径byte[] buffer = new byte[1024];int length;while ((length = inputStream.read(buffer)) > 0) {outputStream.write(buffer, 0, length);}System.out.println("下载成功!");} catch (IOException e) {e.printStackTrace();} finally {try {inputStream.close();} catch (IOException e) {e.printStackTrace();}}// 关闭COS客户端cosClient.shutdown();
}
- 示例代码中,需要替换掉的参数包括:
Secret ID
、Secret Key
、ap-guangzhou
、Bucket名称
、指定对象名称
和下载文件的路径
。其中,指定对象名称
是你要下载的对象名称,下载文件的路径
是你要保存文件的本地路径。 - 注意,在执行完下载操作后,需要手动关闭文件输入流和文件输出流,避免内存泄漏。
依赖:
阿里云 OSS 提供了 OSS SDK for Java,可以通过以下 Maven 依赖添加到项目中:<dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId><version>3.10.2</version>
</dependency>
腾讯云 COS 提供了 COS SDK for Java,可以通过以下 Maven 依赖添加到项目中:<dependency><groupId>com.qcloud</groupId><artifactId>cos_api</artifactId><version>5.6.5</version>
</dependency>
华为云 OBS 提供了 OBS SDK for Java,可以通过以下 Maven 依赖添加到项目中:<dependency><groupId>com.obs</groupId><artifactId>obs</artifactId><version>3.20.3</version>
</dependency>