在SQLite中使用ForeignCollections
发布时间:2020-12-12 18:55:33 所属栏目:百科 来源:网络整理
导读:我想编写一个单元测试,基本上验证我添加到外部集合的对象实际上是在DAO保存检索对象时正确保存和检索的 这是我的实体. @DatabaseTablepublic class Question implements Question,Serializable { @DatabaseField private String questionText; @ForeignColle
我想编写一个单元测试,基本上验证我添加到外部集合的对象实际上是在DAO保存检索对象时正确保存和检索的
这是我的实体. @DatabaseTable public class Question implements Question,Serializable { @DatabaseField private String questionText; @ForeignCollectionField private ForeignCollection<Answer> answers; public void addAnswer(Answer answer) { answers.add(answer); } 我想要做的是创建一个Question实例,将一个Answer对象添加到集合中,并将问题传递给我的DAO,这将保留它.持久性在常规字段上工作正常,所以我知道那里没有问题. 如何在集合中添加答案?当我创建问题时,它的答案集合为空.这是我必须保存新问题,然后检索它以使答案集合非空?或者,我是否设置了BaseCollection,LazyCollection实例的答案? 解决方法这是一个FAQ.正确的方法是使用 Dao.getEmptyForeignCollection(…)方法创建可以添加项目的集合.就像是:Question question = new Question(); query.answers = questionDao.getEmptyForeignCollection("answers"); Answer answer1 = new Answer(); query.answers.add(answer1); // this can come before the question.answers.add() questionDao.create(question); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |