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.
pom.xml
    <dependency>
            <groupId>com.amazonaws</groupId>
            <artifactId>aws-java-sdk-s3</artifactId>
            <version>1.11.112</version>
    </dependency>
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			= "";
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;
    }
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");
    }
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