在我的国家,在云中测试数据存储 API 非常慢,我希望有一种在本地测试数据存储代码的方法。所以我找到了以下代码:
package ro.gae
import com.google.appengine.tools.development.testing.LocalDatastoreServiceTestConfig
import com.google.appengine.tools.development.testing.LocalServiceTestHelper
/**
* Created by roroco on 8/23/15.
*/
trait LcDatastore {
LocalServiceTestHelper h = new LocalServiceTestHelper(new LocalDatastoreServiceTestConfig());
def iiLcDs() {
h.setUp()
}
def closeLcDs() {
h.tearDown()
}
}
但是上面的代码只在内存中保存记录,这些记录在代码完成后就会消失。我希望有一种方法可以将记录保存在我的磁盘中以简化我的代码
更新 我希望这种方式不需要启动 dev_server,因为 dev_server 在 java 中需要长时间启动
最佳答案
你尝试过这样的事情吗?
public class MyTestClass {
LocalServiceTestHelper localServiceTestHelper;
@BeforeClass
public void beforeClass(){
LocalDatastoreServiceTestConfig localDatastoreServiceTestConfig = new LocalDatastoreServiceTestConfig();
localDatastoreServiceTestConfig.setBackingStoreLocation("storagefilelocation");
localDatastoreServiceTestConfig.setNoStorage(false);
localServiceTestHelper = new LocalServiceTestHelper(localDatastoreServiceTestConfig);
}
@Test
public void testSomething(){
}
}
编辑:顺便说一下,我同意@Igor Artamonov 的观点,即这很可能是一个坏主意。但它应该有效。我还可以想到一些这可以有所帮助的事情;就像通过运行单元测试(或任何外部应用程序)将巨大的数据集导入开发本地存储中一样。
关于java - 如何使谷歌数据存储在java中持久化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32207426/