Outils d'exploitation Alibaba Cloud OSS

// coordonnées maven
// <dépendance>
// <groupId> com.aliyun.oss </groupId>
// <artifactId> aliyun-sdk-oss </artifactId>
// <version> 3.8.0 </version>
// </dependency>


import com.aliyun.oss.HttpMethod;
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.oss.model.GeneratePresignedUrlRequest;
import com.aliyun.oss.model.PutObjectRequest;
import org.springframework.web.multipart.MultipartFile;

import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.util.Date;

classe publique AliyunOssUtil {

    point de terminaison de chaîne statique privé = "http://oss-cn-beijing.aliyuncs.com";
    // Le compte principal Alibaba Cloud AccessKey a accès à toutes les API et le risque est très élevé. Il est fortement recommandé de créer et d'utiliser un compte RAM pour l'accès à l'API ou le fonctionnement et la maintenance quotidiens. Veuillez vous connecter à https://ram.console.aliyun.com pour créer un compte RAM.
    private static String accessKeyId = "<remplissez votre propre keyId>";
    private static String accessKeySecret = "<remplissez votre propre keyScecery>";

    private static String bucket = "<remplissez votre propre compartiment>";

    / *
    * Téléchargez des fichiers locaux
    * Paramètre:
    * bucket: nom de l'espace de stockage
    * fileName: spécifiez le nom du fichier de téléchargement, vous pouvez spécifier le répertoire de téléchargement: nom du répertoire / nom du fichier
    * localFilePath: spécifiez le chemin du fichier local
    * * /
    public static void uploadFile (String fileName, String localFilePath) {

        // Créez une instance OSSClient.
        OSS ossClient = new OSSClientBuilder (). Build (endpoint, accessKeyId, accessKeySecret);

        // Créez un objet PutObjectRequest.
        PutObjectRequest putObjectRequest = new PutObjectRequest (bucket, fileName, new File (localFilePath));

        // Téléchargez le fichier.
        ossClient.putObject (putObjectRequest);

        // Fermez OSSClient.
        ossClient.shutdown ();
    }

    / *
     * Télécharger un tableau d'octets
     * Paramètre:
     * bucket: nom de l'espace de stockage
     * headImg: spécifiez le fichier de type MultipartFile
     * fileName: spécifiez le nom du fichier de téléchargement, vous pouvez spécifier le répertoire de téléchargement: nom du répertoire / nom du fichier
     * * /
    public static void uploadFileBytes (fichier MultipartFile, String fileName) {

        // Convertir en tableau d'octets
        octet [] octets = nouvel octet [0];
        essayez {
            bytes = file.getBytes ();
        } catch (IOException e) {
            e.printStackTrace ();
        }

        // Créez une instance OSSClient.
        OSS ossClient = new OSSClientBuilder (). Build (endpoint, accessKeyId, accessKeySecret);

        // Téléchargez le tableau d'octets.
        ossClient.putObject (bucket, fileName, new ByteArrayInputStream (bytes));

        // Fermez OSSClient.
        ossClient.shutdown ();
    }

    / *
    * Supprimer les fichiers Alibaba Cloud
    * Paramètre:
    * bucker: nom de l'espace de stockage
    * fileName: nom de fichier nom de répertoire / nom de fichier
    * * /
    suppression du vide statique public (String fileNme) {

        // Créez une instance OSSClient.
        OSS ossClient = new OSSClientBuilder (). Build (endpoint, accessKeyId, accessKeySecret);

        // Supprimez le fichier. Pour supprimer un dossier, définissez ObjectName sur le nom de dossier correspondant. Si le dossier n'est pas vide, vous devez supprimer tous les objets sous le dossier pour supprimer le dossier.
        ossClient.deleteObject (bucket, fileNme);

        // Fermez OSSClient.
        ossClient.shutdown ();
    }

   / *
   * Interception vidéo et téléchargement sur Alibaba Cloud
    * Paramètre:
    * bucker: nom de l'espace de stockage
    * fileName: fichier distant nom de fichier nom de répertoire / nom de fichier
    * coverName: le nom de la couverture interceptée
   * * /
    public static void videoCoverIntercept (String fileNme, String coverName) {

        // Créez une instance OSSClient.
        OSS ossClient = new OSSClientBuilder (). Build (endpoint, accessKeyId, accessKeySecret);
        // Définit l'opération de découpe d'image vidéo.
        Style de chaîne = "vidéo / instantané, t_1000, f_jpg, w_0, h_0";
        // Spécifiez le délai d'expiration à 10 minutes.
        Date d'expiration = nouvelle date (System.currentTimeMillis () + 1000 * 60 * 10);
        GeneratePresignedUrlRequest req = new GeneratePresignedUrlRequest (bucket, fileNme, HttpMethod.GET);
        req.setExpiration (expiration);
        req.setProcess (style);
        URL signedUrl = ossClient.generatePresignedUrl (req);

        // Chemin de réseau d'image de sortie
        System.out.println (signedUrl);

        // Téléchargement de fichiers Alibaba Cloud
        // Téléchargez le flux réseau.
        InputStream inputStream = null;
        essayez {
            inputStream = nouvelle URL (signedUrl.toString ()). openStream ();
            ossClient.putObject (bucket, coverName, inputStream);
        } catch (IOException e) {
            e.printStackTrace ();
        }

        // Fermez OSSClient.
        ossClient.shutdown ();
        //sClient.shutdown ();
    }

    public static void main (String [] args) {
        String bucket = ""; // Nom de l'espace de stockage
        String fileName = "picture.jpg"; // Vous pouvez spécifier le répertoire de téléchargement en spécifiant le nom du fichier de téléchargement
        String localFilePath = "G: \\ wallpaper \\ 104340-1562985820e760.jpg"; // Spécifiez le chemin du fichier local
//
// // Appel de la méthode de test
// uploadFile (bucket, fileName, localFilePath);
        supprimer ("nom de fichier");
    }
}
Publié 16 articles originaux · a gagné les éloges 1 · views 3823

Je suppose que tu aimes

Origine blog.csdn.net/GYJ_love/article/details/105429752
conseillé
Classement