So verwenden Sie Java und Qiniu Cloud KODO für die Objektspeicherung und -verwaltung
1 Einführung
Mit der rasanten Entwicklung von Cloud Computing und Big Data ist Cloud-Speicher zu einem immer wichtigeren Bestandteil geworden. Als bekannte Objektspeicherplattform in China bietet Qiniu Cloud KODO leistungsstarke Speicher- und Verwaltungsfunktionen und wird häufig in Websites, mobilen Anwendungen, Live-Videos und anderen Bereichen eingesetzt. In diesem Artikel wird die Verwendung von Java und Qiniu Cloud KODO für die Objektspeicherung und -verwaltung vorgestellt und entsprechende Codebeispiele gegeben.
2. Erstellen Sie ein Qiniu Cloud-Konto und Speicherplatz
3. Abhängige Bibliotheken hinzufügen
Fügen Sie die folgenden abhängigen Bibliotheken im POM-Schlüssel hinzu, wie unten gezeigt:
<dependency> <groupId>com.qiniu</groupId> <artifactId>qiniu-java-sdk</artifactId> <version>7.4.0</version> </dependency>
5. Laden Sie Dateien in Qiniu Cloud KODO hoch
Erstellen Sie eine Toolklasse mit dem Namen QiniuUtils und fügen Sie den folgenden Code hinzu:
qiniu.accessKeyId=your_access_key_id qiniu.secretKey=your_secret_key qiniu.bucket=mybucket qiniu.domain=http://your_domain_url
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); } }
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. Dateien löschen
Fügen Sie den folgenden Code in der QiniuUtils-Klasse hinzu:// 下载文件 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); } }
Das obige ist der detaillierte Inhalt vonSo verwenden Sie Java und Qiniu Cloud KODO für die Objektspeicherung und -verwaltung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!