对于我正在创建的android应用程序,我决定使用db4o来管理我的持久性数据。为此,我必须插入几百行非常简单的对象。
public class Teacher
{
String name;
String value;
}
我尝试通过将其作为ArrayList插入并逐个插入来插入它。在这两种情况下,插入大约需要15秒,选择需要6秒。使用Android的普通SQLite时,它可以在不到一秒的时间内完成。
db4o纪录片说你应该做一些提交,如果你是批量插入,但他们谈论100.000+对象。几百个对我来说似乎不是很大。
我有一些更复杂的对象可以很快地工作(一个'周'课程,其中包含'天',每天都有'事件')。
我应该配置一些快速处理几百行的东西,还是比db4o更好的替代持久性数据。我可以使用SQLite,但我不想摆脱它,因为更新等需要做很多工作。
我正在打开数据库
String path = new ContextWrapper(context).getFilesDir().getAbsolutePath();
database = Db4oEmbedded.openFile(Db4oEmbedded.newConfiguration(), path + this.DATABASE_FILENAME);
并将列表检索为
public ArrayList<Teacher> getTeachers()
{
Query query = getDatabase().query();
query.constrain(Teacher.class);
ObjectSet<Teacher> result = query.execute();
return new ArrayList<Teacher>(result);
}
使用的软件