存储在内存数据库中使用ORMLite for Android

时间:2012-06-06 22:11:55

标签: java android sqlite ormlite sqliteopenhelper

我正在为Android开发一个应用程序。我有一个Web服务,我将进行数据库查询和存储。在应用程序的开头我想通过REST调用从Web服务加载某些数据并将其存储在本地数据库中,最好是ORM。我找到了ORMLite,并且喜欢它如何使用,但我想知道如何将数据库存储在内存中,以便在应用程序退出时擦除数据。

当我使用

public DatabaseHelper(Context context) {
    super(context, null, null, DATABASE_VERSION,R.raw.ormlite_config);
}

如文档中所述,它会抛出一个runtimeException。任何有关如何完成此任务或其他方式的建议将不胜感激。

1 个答案:

答案 0 :(得分:0)

我不认为Android数据库API支持内存数据库 - 即使SQLite确实支持它。我也不认为在Android上加载像H2这样的东西只是为了得到一个内存数据库。

我建议您保留数据,然后每次应用程序启动时擦除数据库。是的,它会做不必要的IO,但不应该太糟糕。 ORMlite支持TableUtils.clearTable() method

此外,您可能会考虑使用ORM,只是将对象存储在集合中,如果整点不是持久存在的话。