Télécharger et télécharger des notes en java sur S3

introduction

Ceci est un mémo pour le téléchargement et le téléchargement de java vers S3. Dans un environnement proxy, il expirera si le proxy n'est pas défini. Autre que cela, il a été fait avec l'échantillon officiel.

Je voudrais étudier les détails et les ajouter.

Présentation du pot (maven)

pom.xml


    <dependency>
            <groupId>com.amazonaws</groupId>
            <artifactId>aws-java-sdk-s3</artifactId>
            <version>1.11.112</version>
    </dependency>

Déclaration de constante

java


	static final String S3_ACCESS_KEY			= "";
	static final String S3_SECRET_KEY			= "";
	static final String S3_SERVICE_END_POINT	= "";
	static final String S3_REGION				= "";
	static final String S3_BUCKET_NAME			= "";

Processus d'authentification

java


    //Processus d'authentification
    private static AmazonS3 auth(){
    	System.out.println("auth start");

    	//Informations d'identification AWS
    	AWSCredentials credentials = new BasicAWSCredentials(S3_ACCESS_KEY, S3_SECRET_KEY);

    	//Paramètres du client
    	ClientConfiguration clientConfig = new ClientConfiguration();
    	clientConfig.setProxyHost("[proxyHost]");
    	clientConfig.setProxyPort([portNo]);

    	//Réglage du point final
    	EndpointConfiguration endpointConfiguration = new EndpointConfiguration(S3_SERVICE_END_POINT,  S3_REGION);

    	//Générer un client d'accès S3
    	AmazonS3 client = AmazonS3ClientBuilder.standard().withCredentials(new AWSStaticCredentialsProvider(credentials))
    			.withClientConfiguration(clientConfig)
    			.withEndpointConfiguration(endpointConfiguration).build();

    	System.out.println("auth end");
    	return client;
    }

Processus de téléchargement

java


    //Traitement du téléchargement
    private static void upload() throws Exception{
    	System.out.println("upload start");

        //Processus d'authentification
    	AmazonS3 client = auth();

    	File file = new File("[Télécharger le chemin du fichier]");
    	FileInputStream fis = new FileInputStream(file);


    	ObjectMetadata om = new ObjectMetadata();
    	om.setContentLength(file.length());

    	final PutObjectRequest putRequest = new PutObjectRequest(S3_BUCKET_NAME, file.getName(), fis, om);

    	//Paramètres d'autorisation
    	putRequest.setCannedAcl(CannedAccessControlList.PublicRead);

    	//télécharger
    	client.putObject(putRequest);

    	fis.close();

    	System.out.println("upload end");
    }

Processus de téléchargement

java


    //Traitement de téléchargement
    private static void download() throws Exception{
    	System.out.println("download start");

        //Processus d'authentification
    	AmazonS3 client = auth();

    	final GetObjectRequest getRequest = new GetObjectRequest(S3_BUCKET_NAME, "[Télécharger le nom du fichier");

    	S3Object object = client.getObject(getRequest);

    	FileOutputStream fos = new FileOutputStream(new File("[Chemin de destination de sortie]"));
    	IOUtils.copy(object.getObjectContent(), fos);

    	fos.close();

    	System.out.println("download end");
    }

Recommended Posts

Télécharger et télécharger des notes en java sur S3
Charger et télécharger des notes en Java sur le stockage Azure
Remarques sur le contrôle du signal en Java
Remarques sur le chemin et le package Java
[Java] Tester le chargement / téléchargement de S3 avec "S3 ninja"
Remarques sur l'utilisation des expressions régulières en Java
[Java] Téléchargez une image et convertissez-la en Base64
[Note] Télécharger depuis S3, télécharger vers S3
[Java] Types de base et notes d'instructions
Classe StringBuffer et StringBuilder en Java
Suppression d'objets AWS S3 dans Java
Dossiers renommés dans AWS S3 (Java)
Comprendre equals et hashCode en Java
Activer les SDK Java 8 et Java 11 sur Ubuntu
Remarques sur le traitement des threads Android (java)
Installez Java 9 sur Windows 10 et CentOS 7
Bonjour tout le monde en Java et Gradle
Remarques sur la création de l'environnement de développement de Kotlin et la migration de Java vers Kotlin
Différence entre final et immuable en Java
Une note sur les différences entre les interfaces et les classes abstraites en Java
Remarques sur les opérateurs utilisant Java ~ Type chaîne ~
Remarques sur expand () et collapse () de Expandablerecyclerview
Différence entre les listes d'arry et les listes liées en Java
Remarques sur l'API Stream et SQL de Java
Remarques sur les balises d'extension JSP dans SpringFrameWork
Apprenez les modèles Flyweight et ConcurrentHashMap en Java
La direction de Java dans "C ++ Design and Evolution"
De Java à C et de C à Java dans Android Studio
Lire et écrire des fichiers gzip en Java
Différence entre int et Integer en Java
Discrimination d'énum dans Java 7 et supérieur
Java: Téléchargez le fichier et enregistrez-le à l'emplacement sélectionné dans la boîte de dialogue [Utiliser HttpClient]
Concernant les modificateurs transitoires et la sérialisation en Java
Mettez Java 11 et Spring Tool Suite sur Mac
Détecter des vidéos similaires dans Java et OpenCV rev.2
Consulter le mémo de la copie de fichier de Java 1.7 ou version ultérieure
Publication externe et connexion de MySQL sur Ubuntu
Traitement parallèle et parallèle dans divers langages (édition Java)
Désérialiser le CSV en Java en fonction du nom de l'en-tête
Différence entre next () et nextLine () dans Java Scanner
Différences dans l'écriture des classes Java, C # et Javascript
Capture et sauvegarde de l'installation de sélénium en Java
Ajouter, lire et supprimer des commentaires Excel à l'aide de Java
Vérifier le comportement statique et public dans les méthodes Java
[Java] Comprenez en 10 minutes! Tableau associatif et HashMap
Compilez et exécutez Java sur la ligne de commande
Distinguer les nombres positifs et négatifs en Java
Java ajoute et supprime les filigranes dans les documents Word
Détecter des vidéos similaires dans Java et OpenCV rev.1
Représente le «jour suivant» et le «jour précédent» en Java / Android
Questions sur la gestion des exceptions Java throw et try-catch
Crypter / décrypter avec AES256 en PHP et Java
Générer OffsetDateTime à partir de Clock et LocalDateTime en Java
Notes sur la façon de rédiger des commentaires en anglais
Partition en Java
Génériques Java (Notes)
Changements dans Java 11
[Java] Note sur le tableau