객체 스토리지 및 관리를 위해 Java 및 Qiniu Cloud KODO를 사용하는 방법
1. 소개
클라우드 컴퓨팅과 빅데이터의 급속한 발전으로 클라우드 스토리지는 점점 더 중요한 부분이 되었습니다. 중국에서 잘 알려진 객체 스토리지 플랫폼인 Qiniu Cloud KODO는 강력한 스토리지 및 관리 기능을 제공하며 웹사이트, 모바일 애플리케이션, 라이브 비디오 및 기타 분야에서 널리 사용됩니다. 이 기사에서는 객체 저장 및 관리를 위해 Java 및 Qiniu Cloud KODO를 사용하는 방법을 소개하고 해당 코드 예제를 제공합니다.
2. Qiniu Cloud 계정 및 저장 공간 만들기
- Qiniu Cloud 공식 웹사이트(https://www.qiniu.com/)를 방문하여 "등록" 버튼을 클릭하여 계정을 만드세요.
- Qiniu Cloud Console에 로그인하여 저장 공간을 생성하세요. 콘솔의 "저장 공간" 페이지에서 "새 공간"을 클릭하고 해당 정보를 입력한 후 저장합니다. 여기서는 저장공간 이름을 "mybucket"으로 예시한다.
3. 종속 라이브러리 추가
아래와 같이 Java 프로젝트의 pom.Key에 다음 종속 라이브러리를 추가합니다.
<dependency> <groupId>com.qiniu</groupId> <artifactId>qiniu-java-sdk</artifactId> <version>7.4.0</version> </dependency>
5. Qiniu Cloud KODO
에 파일을 업로드하고 QiniuUtils라는 도구 클래스를 추가합니다. 코드:
- 아래와 같이 파일() 메서드를 업로드해야 하는 곳에서 QiniuUtils.uploadFile을 호출합니다.
qiniu.accessKeyId=your_access_key_id qiniu.secretKey=your_secret_key qiniu.bucket=mybucket qiniu.domain=http://your_domain_url
- 6. 파일을 다운로드합니다.
import com.qiniu.util.Auth; import com.qiniu.util.StringMap; import com.qiniu.util.UrlSafeBase64; import okhttp3.MediaType; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.RequestBody; import okhttp3.Response; import org.json.JSONObject; import java.io.IOException; import java.nio.file.Files; import java.nio.file.Paths; import java.util.UUID; public class QiniuUtils { private static final String ACCESS_KEY = ConfigUtil.getProperty("qiniu.accessKeyId"); private static final String SECRET_KEY = ConfigUtil.getProperty("qiniu.secretKey"); private static final String BUCKET_NAME = ConfigUtil.getProperty("qiniu.bucket"); private static final String DOMAIN = ConfigUtil.getProperty("qiniu.domain"); // 上传文件到七牛云KODO public static String uploadFile(String filePath) throws IOException { String key = UUID.randomUUID().toString(); // 自动生成唯一的key String uploadToken = getUploadToken(); // 获取上传凭证 OkHttpClient client = new OkHttpClient(); // 读取文件内容 byte[] data = Files.readAllBytes(Paths.get(filePath)); RequestBody requestBody = RequestBody.create(MediaType.parse("application/octet-stream"), data); // 构建请求 Request request = new Request.Builder() .url("http://upload.qiniu.com/putb64/" + -1 + "/key/" + UrlSafeBase64.encodeToString(key)) .header("Content-Type", "application/octet-stream") .header("Authorization", "UpToken " + uploadToken) .post(requestBody) .build(); // 发送请求 Response response = client.newCall(request).execute(); if (response.isSuccessful()) { JSONObject jsonObject = new JSONObject(response.body().string()); String url = DOMAIN + "/" + jsonObject.getString("key"); return url; } else { throw new IOException("Unexpected code " + response); } } // 获取上传凭证 private static String getUploadToken() { Auth auth = Auth.create(ACCESS_KEY, SECRET_KEY); return auth.uploadToken(BUCKET_NAME); } }
QiniuUtils 클래스에 다음 코드를 추가합니다.
- 다음과 같이 파일을 다운로드해야 하는 QiniuUtils.downloadFile() 메서드를 호출합니다.
public class MainApp { public static void main(String[] args) throws IOException { String filePath = "path/to/file.jpg"; String url = QiniuUtils.uploadFile(filePath); System.out.println("上传成功,文件URL为:" + url); } }
- 7. 파일 삭제 QiniuUtils 클래스에 다음 코드를 추가합니다.
// 下载文件 public static void downloadFile(String key, String savePath) throws IOException { String downloadUrl = DOMAIN + "/" + key; OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url(downloadUrl) .build(); Response response = client.newCall(request).execute(); if (response.isSuccessful()) { byte[] data = response.body().bytes(); Files.write(Paths.get(savePath), data); System.out.println("下载成功,文件保存路径为:" + savePath); } else { throw new IOException("Unexpected code " + response); } }
public class MainApp { public static void main(String[] args) throws IOException { String key = "file.jpg"; String savePath = "path/to/save/file.jpg"; QiniuUtils.downloadFile(key, savePath); } }
QiniuUtils.deleteFile() 메서드를 호출합니다. 파일을 삭제해야 하는 위치는 아래와 같습니다.
// 删除文件 public static void deleteFile(String key) throws IOException { Auth auth = Auth.create(ACCESS_KEY, SECRET_KEY); Configuration cfg = new Configuration(Zone.zone0()); BucketManager bucketManager = new BucketManager(auth, cfg); bucketManager.delete(BUCKET_NAME, key); System.out.println("删除成功"); }위는 Qiniu에서 Java를 사용하는 방법에 대한 설명입니다. Cloud KODO를 사용한 객체 저장 및 관리에 대한 소개 및 샘플 코드입니다. 이러한 코드를 통해 우리는 쉽게 파일을 업로드, 다운로드, 삭제할 수 있으며 클라우드 스토리지에서 기본 작업을 구현할 수 있습니다. 이 기사가 도움이 되기를 바랍니다!
위 내용은 객체 저장 및 관리를 위해 Java 및 Qiniu Cloud KODO를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

ZendStudio 13.5.1 맥
강력한 PHP 통합 개발 환경

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

드림위버 CS6
시각적 웹 개발 도구
