javaファイルの選択によって複数のファイルをAmazon S3バケットにアップロードしたいと思います。そのために、次のコードを使用しています。このコードはファイルをs3にアップロードできますが、次回は別のファイルをアップロードすると前のファイルが置き換えられます。私はそれがString key = "squre.jpg"によって引き起こされたことを知っています。コードで私の質問は、前のファイルを置き換えずに複数のファイルをアップロードする方法です。ありがとうございました。あなたのコードからjava filechooserを使用してamazon s3バケットに複数のファイルをアップロード
imageUpload.setOnMouseClicked(new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent event) {
FileChooser fileChooser=new FileChooser();
fileChooser.setInitialDirectory(new File("c:\\"));
fileChooser.getExtensionFilters().addAll(new FileChooser.ExtensionFilter("JPG Images","*.jpg"),
new FileChooser.ExtensionFilter("JPEG Images","*.jpeg"),
new FileChooser.ExtensionFilter("PNG Images","*.png"));
File file=fileChooser.showOpenDialog(null);
if (file!=null){
try {
AWSCredentials Credentials = new BasicAWSCredentials(
"AWSAccessKeyId",
"AWSSecretKey");
AmazonS3Client amazonS3Client = new AmazonS3Client(Credentials);
String bucketName = "awsimagetrading";
String key = "squre.jpg";
System.out.println("Uploading a new object to S3 from a file\n");
AmazonS3 s3client = new AmazonS3Client(Credentials);
s3client.putObject(new PutObjectRequest(bucketName,key,file));
URL url = amazonS3Client.generatePresignedUrl(bucketName,key,Date.from(Instant.now().plus(5,ChronoUnit.MINUTES)));
System.out.println(url);
//label.setText(url.toString());
} catch (AmazonClientException e) {
e.printStackTrace();
}
}
}
});
アップロードごとに異なるキーを使用できないのはなぜですか?または私はここに何かを逃していますか? – GhostCat