ArrayList list = ... - >从数据库中获取数据
//对列表中对象的值进行一些更改
for(MyObject object:list){ object.save(); }
有没有一种方法可以保存多个项目,而不是多次调用save()?
答案 0 :(得分:2)
最终找到了
FlowManager.getModelAdapter(MyTable.class).saveAll(myObjectsList);
并且它比多次调用save更快。通过对15个项目的一些快速测试,多次保存平均花费120毫秒,而saveAll花费大约100毫秒。百分比方面,这是一个很大的差异。
答案 1 :(得分:0)
多次调用save()
即可。如果有一千个条目,您可以使用asynchronous transaction执行此操作以避免阻止UI。
如果您确实要保存一次,请创建一个新表(模型)名称ListObject
,然后使用一对多关系将其存储为List<Object>
。所以只能保存一次。
https://agrosner.gitbooks.io/dbflow/content/Relationships.html