java - 来自 Java 的 Google Cloud Storage 中的版本控制支持?

标签 java google-app-engine version google-cloud-storage

之前我问过一个关于使用 Google 云存储在 GAE 之上构建文档管理系统的问题 Document management system using Google Cloud Storage .我想我得到了适当的答案。这个问题只是相同的延伸。所以我的问题是:我可以通过我的 java 代码处理版本控制,就像在这个链接 (developers.google.com/storage/docs/object-versioning) 中提到的那样,比如列出一个对象的所有版本,检索一个对象的特定版本等。

因为我找到了用于列出、删除对象和在 Google 云存储上执行多项操作的列表 API,但我可以通过 Java 提供的任何 API 处理版本吗?

提前致谢。

最佳答案

正如 Google Cloud Storage 文档所述 ( https://developers.google.com/storage/docs/developer-guide ) 存储的对象是不可变的。

即您只能在存储和存储新对象后删除对象,即使名称相同也是如此。

因此,要进行版本控制,您可以在伪文件夹中组织数据。像:bucket/file-name/version-1;数据/文件名/版本 2 等 然后你需要添加一些 BL 来处理这个版本(需要时访问最新版本,删除过时的等等)。然而,在文档管理系统中,考虑事务、冲突等是有好处的。因此,您可能希望在数据库中管理版本(在 GAE 上?)并将版本内容作为文件存储在云中(即由文件内容哈希命名)。

关于java - 来自 Java 的 Google Cloud Storage 中的版本控制支持?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16077618/

相关文章:

java - Axis2 SOAP 请求

java - 将 checkstyle/google_checks.xml 与 maven-checkstyle-plugin 一起使用时出错

Java多人服务器阻塞io

java - Groovy 或 Java 中是否有任何类型的算术安全导航运算符?

python - Google App 引擎中的微服务

javascript - 是否可以将整个 jQuery 放入一个新变量中?

google-app-engine - 要传递给 appengine/file.Delete() 的 fileName 的值是?

python - 谷歌地图和谷歌应用引擎

javascript - 未捕获错误 : Syntax error, 无法识别的表达式:不支持的伪:标签

python - 如何验证安装的 spaCy 版本?