我的数据模型几乎与this link中描述的数据模型相同 - 其中一个对象包含另一个对象的列表。在这种情况下,该对象包含另一个对象的列表。
当我从服务器获取数据时,我在对象的每一侧设置引用:
final Dao<SurveyQuestion, Integer> questionDao = Db.get().getTableDao(SurveyQuestion.class);
final Dao<SurveyAnswer, Integer> answerDao = Db.get().getTableDao(SurveyAnswer.class);
for (final Action action : actions) {
tableDao.createOrUpdate(action);
for (final SurveyQuestion question : action.getQuestions()) {
question.setAction(action);
questionDao.createOrUpdate(question);
for (final SurveyAnswer answer : question.getAnswers()) {
answer.setQuestion(question);
answerDao.createOrUpdate(answer);
}
}
}
所以我打电话给'createOrUpdate&#39;在三个不同的表上。服务器返回大约300个Action对象,这需要大约40-50秒来保存。
我是Ormlite的新手,所以想知道是否有可能改进这个例程,以便更快地保存。