我有一个现有的 sqlite db 架构(大约 30 个表),我必须将其导入到我的 Android 项目中。我想在我的代码中使用 greenDao,但如果我已经创建了 sqlite db,我不知道这怎么可能。即使我没有由 greenDao 生成器生成的 pojo/entity 类,是否可以使用 greenDao?我可以手动生成它们吗?我想我还需要 DaoMaster 和 DaoSession!??!
非常感谢。
我有一个现有的 sqlite db 架构(大约 30 个表),我必须将其导入到我的 Android 项目中。我想在我的代码中使用 greenDao,但如果我已经创建了 sqlite db,我不知道这怎么可能。即使我没有由 greenDao 生成器生成的 pojo/entity 类,是否可以使用 greenDao?我可以手动生成它们吗?我想我还需要 DaoMaster 和 DaoSession!??!
非常感谢。
我从来没有做过,但理论上,是的,你可以。
我可以使用现有的实体类吗?我可以跳过实体生成吗?是的。在您的生成器项目中,对您不想生成的实体调用 setSkipGeneration(true)。像这样,您可以以手动维护为代价对您的实体进行最大程度的控制。但是,这被认为是高级用法,仅应保留用于特殊情况:推荐的方法是生成实体并使用“保留部分”将自定义代码注入其中。如果您选择跳过实体生成,则必须按照在生成器项目中添加的顺序提供具有所有属性字段的构造函数。或者,在实体上调用 setConstructors(false) 以使 greenDAO 使用 setter 而不是构造函数来创建实体。
我了解您必须正常实施生成器项目,但需要通过Skype 生成实体。这应该只生成 DaoMaster 和 DaoSession。