Heim Java javaLernprogramm So verwenden Sie Java und Qiniu Cloud KODO für die Objektspeicherung und -verwaltung

So verwenden Sie Java und Qiniu Cloud KODO für die Objektspeicherung und -verwaltung

Jul 06, 2023 pm 08:01 PM
java 对象存储 管理 七牛云

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

  1. Besuchen Sie die offizielle Website von Qiniu Cloud (https://www.qiniu.com/) und klicken Sie auf die Schaltfläche „Registrieren“, um ein Konto zu erstellen.
  2. Melden Sie sich bei der Qiniu Cloud Console an und erstellen Sie einen Speicherplatz. Klicken Sie auf der Seite „Speicherplatz“ der Konsole auf „Neuer Speicherplatz“, geben Sie die entsprechenden Informationen ein und speichern Sie sie. Hier wird der Speicherplatz beispielhaft „mybucket“ genannt.

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>
Nach dem Login kopieren

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
    Nach dem Login kopieren
  1. call qiniuUtils.UploadFile, wo Sie die Dateien () () hochladen müssen, wie unten gezeigt:
    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);
        }
    }
    Nach dem Login kopieren
  1. 6. Laden Sie die Datei herunter. die QiniuUtils.downloadFile()-Methode, in die die Datei heruntergeladen werden muss, wie unten gezeigt:
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);
    }
}
Nach dem Login kopieren

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);
        }
    }
    Nach dem Login kopieren
  1. Rufen Sie die QiniuUtils.deleteFile()-Methode auf, in der die Die Datei muss gelöscht werden, wie unten gezeigt:
  2. 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);
        }
    }
    Nach dem Login kopieren
    Oben geht es um die Verwendung von Java mit Qiniu. Eine Einführung und ein Beispielcode für die Objektspeicherung und -verwaltung mithilfe von Cloud KODO. Mithilfe dieser Codes können wir problemlos Dateien hochladen, herunterladen und löschen sowie grundlegende Vorgänge im Cloud-Speicher implementieren. Ich hoffe, dieser Artikel hilft Ihnen!

      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!

    Erklärung dieser Website
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

    Heiße KI -Werkzeuge

    Undresser.AI Undress

    Undresser.AI Undress

    KI-gestützte App zum Erstellen realistischer Aktfotos

    AI Clothes Remover

    AI Clothes Remover

    Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

    Undress AI Tool

    Undress AI Tool

    Ausziehbilder kostenlos

    Clothoff.io

    Clothoff.io

    KI-Kleiderentferner

    AI Hentai Generator

    AI Hentai Generator

    Erstellen Sie kostenlos Ai Hentai.

    Heißer Artikel

    R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
    2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
    Repo: Wie man Teamkollegen wiederbelebt
    4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
    Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
    3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

    Heiße Werkzeuge

    Notepad++7.3.1

    Notepad++7.3.1

    Einfach zu bedienender und kostenloser Code-Editor

    SublimeText3 chinesische Version

    SublimeText3 chinesische Version

    Chinesische Version, sehr einfach zu bedienen

    Senden Sie Studio 13.0.1

    Senden Sie Studio 13.0.1

    Leistungsstarke integrierte PHP-Entwicklungsumgebung

    Dreamweaver CS6

    Dreamweaver CS6

    Visuelle Webentwicklungstools

    SublimeText3 Mac-Version

    SublimeText3 Mac-Version

    Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

    Quadratwurzel in Java Quadratwurzel in Java Aug 30, 2024 pm 04:26 PM

    Leitfaden zur Quadratwurzel in Java. Hier diskutieren wir anhand eines Beispiels und seiner Code-Implementierung, wie Quadratwurzel in Java funktioniert.

    Perfekte Zahl in Java Perfekte Zahl in Java Aug 30, 2024 pm 04:28 PM

    Leitfaden zur perfekten Zahl in Java. Hier besprechen wir die Definition, Wie prüft man die perfekte Zahl in Java?, Beispiele mit Code-Implementierung.

    Zufallszahlengenerator in Java Zufallszahlengenerator in Java Aug 30, 2024 pm 04:27 PM

    Leitfaden zum Zufallszahlengenerator in Java. Hier besprechen wir Funktionen in Java anhand von Beispielen und zwei verschiedene Generatoren anhand ihrer Beispiele.

    Weka in Java Weka in Java Aug 30, 2024 pm 04:28 PM

    Leitfaden für Weka in Java. Hier besprechen wir die Einführung, die Verwendung von Weka Java, die Art der Plattform und die Vorteile anhand von Beispielen.

    Armstrong-Zahl in Java Armstrong-Zahl in Java Aug 30, 2024 pm 04:26 PM

    Leitfaden zur Armstrong-Zahl in Java. Hier besprechen wir eine Einführung in die Armstrong-Zahl in Java zusammen mit einem Teil des Codes.

    Smith-Nummer in Java Smith-Nummer in Java Aug 30, 2024 pm 04:28 PM

    Leitfaden zur Smith-Zahl in Java. Hier besprechen wir die Definition: Wie überprüft man die Smith-Nummer in Java? Beispiel mit Code-Implementierung.

    Fragen zum Java Spring-Interview Fragen zum Java Spring-Interview Aug 30, 2024 pm 04:29 PM

    In diesem Artikel haben wir die am häufigsten gestellten Fragen zu Java Spring-Interviews mit ihren detaillierten Antworten zusammengestellt. Damit Sie das Interview knacken können.

    Brechen oder aus Java 8 Stream foreach zurückkehren? Brechen oder aus Java 8 Stream foreach zurückkehren? Feb 07, 2025 pm 12:09 PM

    Java 8 führt die Stream -API ein und bietet eine leistungsstarke und ausdrucksstarke Möglichkeit, Datensammlungen zu verarbeiten. Eine häufige Frage bei der Verwendung von Stream lautet jedoch: Wie kann man von einem Foreach -Betrieb brechen oder zurückkehren? Herkömmliche Schleifen ermöglichen eine frühzeitige Unterbrechung oder Rückkehr, aber die Stream's foreach -Methode unterstützt diese Methode nicht direkt. In diesem Artikel werden die Gründe erläutert und alternative Methoden zur Implementierung vorzeitiger Beendigung in Strahlverarbeitungssystemen erforscht. Weitere Lektüre: Java Stream API -Verbesserungen Stream foreach verstehen Die Foreach -Methode ist ein Terminalbetrieb, der einen Vorgang für jedes Element im Stream ausführt. Seine Designabsicht ist

    See all articles