DBFlow - 高效地更新多个项目
DBFlow - update multiple items efficiently
ArrayList list =... --> 从数据库获取数据
//对列表中对象的值做一些改变
for(MyObject object:list){
object.save();
}
有没有比多次调用 save() 更有效的保存多个项目的方法来代替这个 for 循环?
多次调用save()
即可。如果有一千个条目,你可以用 asynchronous transaction 来避免阻塞 UI。
如果你真的想保存一次,创建一个新的table(模型)名称ListObject
,然后使用一对多的关系将其存储为[=12] =].所以只能保存一次。
https://agrosner.gitbooks.io/dbflow/content/Relationships.html
终于找到了
FlowManager.getModelAdapter(MyTable.class).saveAll(myObjectsList);
而且比多次调用保存要快。从对 15 个项目的一些快速测试来看,多次保存平均花费了 120 毫秒,而 saveAll 花费了大约 100 毫秒。从百分比上看,差别很大。
ArrayList list =... --> 从数据库获取数据
//对列表中对象的值做一些改变
for(MyObject object:list){ object.save(); }
有没有比多次调用 save() 更有效的保存多个项目的方法来代替这个 for 循环?
多次调用save()
即可。如果有一千个条目,你可以用 asynchronous transaction 来避免阻塞 UI。
如果你真的想保存一次,创建一个新的table(模型)名称ListObject
,然后使用一对多的关系将其存储为[=12] =].所以只能保存一次。
https://agrosner.gitbooks.io/dbflow/content/Relationships.html
终于找到了
FlowManager.getModelAdapter(MyTable.class).saveAll(myObjectsList);
而且比多次调用保存要快。从对 15 个项目的一些快速测试来看,多次保存平均花费了 120 毫秒,而 saveAll 花费了大约 100 毫秒。从百分比上看,差别很大。