Android - GreenDao为现有的sqlite数据库创建/使用实体和Dao类。将greenDao与现有数据库一起使用

时间:2015-06-22 13:21:29

标签: sqlite dao pojo greendao greendao-generator

我有一个现有的sqlite数据库模式(大约30个表),我必须导入到我的Android项目中。 我想在我的代码中使用greenDao,但是如果我已经创建了sqlite db,我不知道它是如何可能的。 即使我没有greenDao Generator生成的pojo / entity类,是否可以使用greenDao?我可以手动生成它们吗? 我想我也需要DaoMaster和DaoSession!??!

非常感谢。

1 个答案:

答案 0 :(得分:1)

我从来没有这样做过,但理论上,是的,你可以。

来自greenDao FAQ page

  

我可以使用现有的实体类吗?我可以跳过实体生成吗?   是。在您的生成器项目中,对您不想生成的实体调用setSkipGeneration(true)。像这样,您可以以人工维护为代价尽可能地控制您的实体。但是,这被认为是高级用法,应仅为特殊情况保留:建议的方法是生成实体并使用“保留部分”将自定义代码注入其中。如果选择跳过实体生成,则必须按照生成器项目中添加的顺序为构造函数提供所有属性字段。或者,在实体上调用setConstructors(false)以使greenDAO使用setter而不是构造函数来创建实体。

我知道你必须正常实现生成器项目,但是要生成实体。这应该只生成DaoMaster和DaoSession。