有一个spring boot应用程序,我尝试在S3目标存储桶的文件夹中放置一个文件。目标bucket/targetsystem文件夹/文件。csv
将从yml配置文件检索的每个文件的targetsystem文件夹名称将不同。
如果该文件夹未退出,则必须通过代码创建targetsystem文件夹,并将文件放在该文件夹下
据我所知,在S3桶中没有文件夹概念,所有文件都存储为对象。
阅读了一些文档,比如将文件放在文件夹下,必须给出关键表达式,比如targetsystem folder/file。csv和bucket=目标bucket。但这行不通。希望使用spring集成aws而不直接使用aws sdk来实现这一点
<int-aws:s3-outbound-channel-adapter id="filesS3Mover"
channel="filesS3MoverChannel"
transfer-manager="transferManager"
bucket="${aws.s3.target.bucket}"
key-expression="headers.targetsystem-folder/headers.file_name"
command="UPLOAD">
</int-aws:s3-outbound-channel-adapter>
有人能在这个问题上提供指导吗
在我之前工作的项目中,我只是使用了java aws sdk提供的。然后在我的实现中,我做了这样的事情
private void uploadFileTos3bucket(String fileName, File file) {
s3client.putObject(new PutObjectRequest("target-bucket", "/targetsystem-folder/"+fileName, file)
.withCannedAcl(CannedAccessControlList.PublicRead));
}
我没有再创建配置。它会自动在bucket中创建/targetsystem文件夹
(然后将文件放入其中),如果文件不存在,则将文件放入其中。
你可以把这个答案作为参考,以便进一步解释这个问题。
S3中没有“子目录”。有桶,桶里有钥匙。
通过使用前缀搜索,可以模拟传统目录。例如,您可以将以下密钥存储在存储桶中:
foo/bar1
foo/bar2
foo/bar3
blah/baz1
blah/baz2
你的问题是key-表达式
中的SpEL是错误的。试着从正则Java代码开始,想象一下如何构建这样的值。然后你会发现你的表达式中缺少连接操作:
key-expression="headers.targetsystem-folder + '/' + headers.file_name"
另外,请在将来提供更多关于错误的信息。在大多数情况下,堆栈跟踪是非常有用的。
我使用的是Gradle1.10,而android插件的版本是0.8.0。我的android项目需要这两个JAR:和。我这样添加文件: 在gradle构建期间,我得到一个错误消息,说这两个文件在中重复。我通过排除以下文件解决了问题: 我必须排除所有的,因为显然有一个重复的文件在所有的。 我想知道为什么会出现这个问题。是android插件的bug还是gradle本身的bug?排除上述文件会不会造成什么
希望在节点JS中使用writefile将数据写入特定文件夹。 我在stackoverflow中看到过几个关于这个问题的问题,但没有一个对我有效。
我在独立应用程序中使用Maven,我想将所有依赖项打包到库文件夹中的JAR文件中,正如这里的答案之一所提到的: 如何使用Maven创建具有依赖项的可执行JAR? 我希望我的最终JAR文件有一个库文件夹,其中包含作为JAR文件的依赖项,而不是像那样将依赖项以文件夹的形式放在.m2文件夹中的Maven层次结构。 实际上,当前的配置符合我的要求,但在运行应用程序时,我在加载JAR文件方面遇到了问题。我不
问题内容: 如今,我们可以将文件拖放到一个特殊的容器中,并使用XHR2上载它们。带有实时进度条等。非常酷的东西。 但是有时候我们不想要那么酷。我想要的是一次将文件拖放 到标准HTML文件输入中 :。 那可能吗?有什么方法可以从文件拖放中用正确的文件名(?)“填充”文件输入吗?(出于文件系统安全性原因,完整的文件路径不可用。) 为什么? 因为我想提交一份普通表格。适用于所有浏览器和所有设备。拖放只是
问题内容: 我还没有看到执行此操作的示例。API规范中不允许这样做吗? 我正在寻找一种简单的拖放解决方案,用于上传整个文件夹的照片树。 问题答案: 多亏了Chrome> = 21,现在才有可能。
我在利用MagickNET和C#控制台。下面的代码找到所有的文件,然后将其转换为。 现在,我想把.eps和.jpg分开。例如: 文件夹内容: 图1.每股收益 在执行循环之后。文件夹的内容将是: image1.eps image2.eps image1.jpg image2.jpg 我将如何放置. jpg在不同的文件夹?