[服务器图片上传demo]

刺骨的言语ヽ痛彻心扉 2023-10-12 08:43 9阅读 0赞

目录

前言:

Java 实现华为云服务器图片上传和下载的示例代码:

图片下载

Java 实现阿里云服务器图片上传和下载的示例代码:

图片下载

Java 实现腾讯云服务器图片上传和下载的示例代码:

图片下载

依赖:


前言:

记录一下小笔记

Java 实现华为云服务器图片上传和下载的示例代码:

  1. public void uploadFile(String filePath, String objectName) {
  2. // 构造华为云的身份认证信息
  3. String ak = "你的Access Key ID";
  4. String sk = "你的Secret Access Key";
  5. String projectId = "你的项目ID";
  6. String regionName = "cn-north-4";
  7. BasicCredentials auth = new BasicCredentials(ak, sk, projectId, regionName);
  8. // 构造OBS客户端实例
  9. OBSClient obsClient = new OBSClient(auth);
  10. // 构造上传请求
  11. PutObjectRequest request = new PutObjectRequest();
  12. request.setBucketName("你的Bucket名称");
  13. request.setObjectKey(objectName); // 指定对象名称
  14. request.setFile(new File(filePath)); // 指定上传文件的路径
  15. // 执行上传操作
  16. PutObjectResult result = obsClient.putObject(request);
  17. System.out.println("上传成功!");
  18. }
  • 示例代码中,需要替换掉的参数包括:Access Key IDSecret Access Key项目IDcn-north-4Bucket名称上传文件的路径指定对象名称。其中,指定对象名称是你在上传文件时指定的对象名称,需要确保它在当前 Bucket 中是唯一的。

图片下载

  1. public void downloadFile(String objectName, String targetFilePath) {
  2. // 构造华为云的身份认证信息
  3. String ak = "你的Access Key ID";
  4. String sk = "你的Secret Access Key";
  5. String projectId = "你的项目ID";
  6. String regionName = "cn-north-4";
  7. BasicCredentials auth = new BasicCredentials(ak, sk, projectId, regionName);
  8. // 构造OBS客户端实例
  9. OBSClient obsClient = new OBSClient(auth);
  10. // 构造下载请求
  11. GetObjectRequest request = new GetObjectRequest();
  12. request.setBucketName("你的Bucket名称");
  13. request.setObjectKey(objectName); // 指定对象名称
  14. // 执行下载操作
  15. try (OBSObject obsObject = obsClient.getObject(request)) {
  16. InputStream inputStream = obsObject.getObjectContent(); // 获取文件输入流
  17. FileOutputStream outputStream = new FileOutputStream(targetFilePath); // 指定下载文件的路径
  18. byte[] buffer = new byte[1024];
  19. int length;
  20. while ((length = inputStream.read(buffer)) > 0) {
  21. outputStream.write(buffer, 0, length);
  22. }
  23. outputStream.close();
  24. System.out.println("下载成功!");
  25. } catch (IOException e) {
  26. e.printStackTrace();
  27. }
  28. }
  • 示例代码中,需要替换掉的参数包括:Access Key IDSecret Access Key项目IDcn-north-4Bucket名称指定对象名称下载文件的路径。其中,指定对象名称是你要下载的对象名称,下载文件的路径是你要保存文件的本地路径。
  • 注意,在执行完下载操作后,需要手动关闭文件输入流和文件输出流,避免内存泄漏

Java 实现阿里云服务器图片上传和下载的示例代码:

  1. public void uploadFile(String filePath, String objectName) {
  2. // 构造阿里云的身份认证信息
  3. String accessKeyId = "你的Access Key ID";
  4. String accessKeySecret = "你的Access Key Secret";
  5. String endpoint = "你的OSS Endpoint";
  6. OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
  7. // 构造上传请求
  8. PutObjectRequest request = new PutObjectRequest("你的Bucket名称", objectName, new File(filePath));
  9. // 执行上传操作
  10. ossClient.putObject(request);
  11. System.out.println("上传成功!");
  12. // 关闭OSS客户端
  13. ossClient.shutdown();
  14. }
  • 在这个示例代码中,需要替换掉的参数包括:Access Key IDAccess Key SecretOSS EndpointBucket名称上传文件的路径指定对象名称。其中,指定对象名称是你在上传文件时指定的对象名称,需要确保它在当前 Bucket 中是唯一的。

图片下载

  1. public void downloadFile(String objectName, String targetFilePath) {
  2. // 构造阿里云的身份认证信息
  3. String accessKeyId = "你的Access Key ID";
  4. String accessKeySecret = "你的Access Key Secret";
  5. String endpoint = "你的OSS Endpoint";
  6. OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
  7. // 构造下载请求
  8. GetObjectRequest request = new GetObjectRequest("你的Bucket名称", objectName);
  9. // 执行下载操作
  10. try (OSSObject ossObject = ossClient.getObject(request)) {
  11. InputStream inputStream = ossObject.getObjectContent(); // 获取文件输入流
  12. FileOutputStream outputStream = new FileOutputStream(targetFilePath); // 指定下载文件的路径
  13. byte[] buffer = new byte[1024];
  14. int length;
  15. while ((length = inputStream.read(buffer)) > 0) {
  16. outputStream.write(buffer, 0, length);
  17. }
  18. outputStream.close();
  19. System.out.println("下载成功!");
  20. } catch (IOException e) {
  21. e.printStackTrace();
  22. }
  23. // 关闭OSS客户端
  24. ossClient.shutdown();
  25. }
  • 示例代码中,需要替换掉的参数包括:Access Key IDAccess Key SecretOSS EndpointBucket名称指定对象名称下载文件的路径。其中,指定对象名称是你要下载的对象名称,下载文件的路径是你要保存文件的本地路径。
  • 注意,在执行完下载操作后,需要手动关闭文件输入流和文件输出流,避免内存泄漏。

Java 实现腾讯云服务器图片上传和下载的示例代码:

  1. public void uploadFile(String filePath, String objectName) {
  2. // 构造腾讯云的身份认证信息
  3. String secretId = "你的Secret ID";
  4. String secretKey = "你的Secret Key";
  5. String region = "ap-guangzhou";
  6. COSCredentials cred = new BasicCOSCredentials(secretId, secretKey);
  7. ClientConfig clientConfig = new ClientConfig(new Region(region));
  8. COSClient cosClient = new COSClient(cred, clientConfig);
  9. // 构造上传请求
  10. File localFile = new File(filePath);
  11. PutObjectRequest request = new PutObjectRequest("你的Bucket名称", objectName, localFile);
  12. // 执行上传操作
  13. cosClient.putObject(request);
  14. System.out.println("上传成功!");
  15. // 关闭COS客户端
  16. cosClient.shutdown();
  17. }
  • 示例代码中,需要替换掉的参数包括:Secret IDSecret Keyap-guangzhouBucket名称上传文件的路径指定对象名称。其中,指定对象名称是你在上传文件时指定的对象名称,需要确保它在当前 Bucket 中是唯一的。

图片下载

  1. public void downloadFile(String objectName, String targetFilePath) {
  2. // 构造腾讯云的身份认证信息
  3. String secretId = "你的Secret ID";
  4. String secretKey = "你的Secret Key";
  5. String region = "ap-guangzhou";
  6. COSCredentials cred = new BasicCOSCredentials(secretId, secretKey);
  7. ClientConfig clientConfig = new ClientConfig(new Region(region));
  8. COSClient cosClient = new COSClient(cred, clientConfig);
  9. // 构造下载请求
  10. GetObjectRequest request = new GetObjectRequest("你的Bucket名称", objectName);
  11. // 执行下载操作
  12. COSObject cosObject = cosClient.getObject(request);
  13. InputStream inputStream = cosObject.getObjectContent(); // 获取文件输入流
  14. try (FileOutputStream outputStream = new FileOutputStream(targetFilePath)) { // 指定下载文件的路径
  15. byte[] buffer = new byte[1024];
  16. int length;
  17. while ((length = inputStream.read(buffer)) > 0) {
  18. outputStream.write(buffer, 0, length);
  19. }
  20. System.out.println("下载成功!");
  21. } catch (IOException e) {
  22. e.printStackTrace();
  23. } finally {
  24. try {
  25. inputStream.close();
  26. } catch (IOException e) {
  27. e.printStackTrace();
  28. }
  29. }
  30. // 关闭COS客户端
  31. cosClient.shutdown();
  32. }
  • 示例代码中,需要替换掉的参数包括:Secret IDSecret Keyap-guangzhouBucket名称指定对象名称下载文件的路径。其中,指定对象名称是你要下载的对象名称,下载文件的路径是你要保存文件的本地路径。
  • 注意,在执行完下载操作后,需要手动关闭文件输入流和文件输出流,避免内存泄漏。

依赖:

  1. 阿里云 OSS 提供了 OSS SDK for Java,可以通过以下 Maven 依赖添加到项目中:
  2. <dependency>
  3. <groupId>com.aliyun.oss</groupId>
  4. <artifactId>aliyun-sdk-oss</artifactId>
  5. <version>3.10.2</version>
  6. </dependency>
  7. 腾讯云 COS 提供了 COS SDK for Java,可以通过以下 Maven 依赖添加到项目中:
  8. <dependency>
  9. <groupId>com.qcloud</groupId>
  10. <artifactId>cos_api</artifactId>
  11. <version>5.6.5</version>
  12. </dependency>
  13. 华为云 OBS 提供了 OBS SDK for Java,可以通过以下 Maven 依赖添加到项目中:
  14. <dependency>
  15. <groupId>com.obs</groupId>
  16. <artifactId>obs</artifactId>
  17. <version>3.20.3</version>
  18. </dependency>

发表评论

表情:
评论列表 (有 0 条评论,9人围观)

还没有评论,来说两句吧...

相关阅读