如何在springboot中访问GCS存储桶?

时间:2020-01-22 11:12:07

标签: java spring-boot google-cloud-platform google-cloud-storage

在春季启动中,GCP可以从GCS存储桶读取文件的配置是什么?

2 个答案:

答案 0 :(得分:2)

您可以自动装配 Storage 类以使用存储桶(CRUD 操作)。

@Autowired
private Storage storage;

public void store(InputStream OBJECT_TO_BE_STORED){
  Blob blob = storage.get(BUCKET_NAME).create(OBJECT_NAME, OBJECT_TO_BE_STORED);
}

需要在application.properties中定义以下属性

  • spring.cloud.gcp.project-id
  • spring.cloud.gcp.credentials.location
  • 存储桶名称的属性 KV

Maven 应具有以下依赖项:

        <dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-gcp-dependencies</artifactId>
            <version>1.2.3.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
   </dependencyManagement>

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-gcp-starter-storage</artifactId>
        </dependency>

参考:

  1. https://docs.spring.io/spring-cloud-gcp/docs/1.2.6.RELEASE/reference/html/#spring-cloud-gcp-core
  2. https://docs.spring.io/spring-cloud-gcp/docs/1.2.6.RELEASE/reference/html/#cloud-storage

答案 1 :(得分:1)

您可以使用Spring Cloud GCP存储组件,可以轻松地通过gradle / maven将其添加到项目中。

您可以找到一个入门示例here:)

如果这是您第一次使用gcs,请查看文档,您肯定需要了解gcp项目是什么,存储桶是什么以及如何通过服务帐户访问文件。