Spring Cloud AWS добавляет поддержку сервиса Amazon S3 для загрузки и записи ресурсов с помощью загрузчика ресурсов и протокола s3.Как только вы настроили загрузчик ресурсов AWS , вы можете написать собственный модуль записи Spring Batch, например:
import java.io.OutputStream;
import java.util.List;
import org.springframework.batch.item.ItemWriter;
import org.springframework.core.io.ResourceLoader;
import org.springframework.core.io.WritableResource;
public class AwsS3ItemWriter implements ItemWriter<String> {
private ResourceLoader resourceLoader;
private WritableResource resource;
public AwsS3ItemWriter(ResourceLoader resourceLoader, String resource) {
this.resourceLoader = resourceLoader;
this.resource = (WritableResource) this.resourceLoader.getResource(resource);
}
@Override
public void write(List<? extends String> items) throws Exception {
try (OutputStream outputStream = resource.getOutputStream()) {
for (String item : items) {
outputStream.write(item.getBytes());
}
}
}
}
. Затем вы сможете использовать этот модуль записи с ресурсом S3, таким как * 1008.*.
Есть ли в любом случае, мы можем сделать это?
Обратите внимание, что я не компилировал / тестировал предыдущий код.Я просто хотел дать вам отправную точку, как это сделать.
Надеюсь, это поможет.