如何在重建时不丢失本地GAE数据存储区中的数据

时间:2012-05-31 12:40:42

标签: java google-app-engine google-cloud-datastore

每次重建本地GAE应用程序时,我都会丢失数据,然后必须重新初始化空数据库。这可能非常耗时,尤其是在存在大量实体类型的情况下。

如何在重建之间保留数据?

3 个答案:

答案 0 :(得分:1)

我发现的解决方案只是在重建之前获取生成的数据库的副本,然后再将其恢复。

为了节省您的时间,它位于:

...\out\artifacts\...\WEB-INF\appengine-generated\local_db.bin

基本上,在构建输出位置找到appengine生成的文件夹并获取它的副本。

答案 1 :(得分:1)

您究竟是如何重建应用的?除非通过此过程明确清除保存数据的文件,否则应保留该文件。您是否正在使用Windows和旧SDK?在SDK 1.6.3和1.6.4中,有一个问题,如果你在启动器中停止应用程序,它将擦除数据(嗯,实际上它将永远不会在第一时间写它,但它将保留在内存中)。这已通过1.6.5 SDK修复。

答案 2 :(得分:1)

您可以配置开发服务器(通过JVM选项)将blobstore数据和数据存储区数据存储在不同的位置,因此不会被删除。

A convenient way to preload data in development environment datastore