GreenDAO真的很简单查询

时间:2014-01-10 04:05:25

标签: greendao

我想创建一个非常简单的查询来使用greendao查找sql​​ite数据库。 2个字段,一个是ID,另一个是“肯定”。 我很抱歉成为这样的初学者,但我不知道如何使用greendao包括导入的内容等。所有我能够做到目前为止是添加greendao库但我找不到一个很好的教程,只是做一个查询。基本上我希望它是一个随机ID,调用一个随机的肯定,并将其返回到我的主要活动..再一次,我很抱歉,但我真的很努力,无处可去..

3 个答案:

答案 0 :(得分:1)

Greendao是一个ORM框架。如果你不知道这意味着什么,你应该首先查看它。

Greendao的工作原理如下:

  • 您创建一个java项目,为您的真实应用生成源代码。你必须在这个项目中包括DaoCore和DaoGenerator。
  • 您将生成的源代码添加到您的android项目中并在其中包含DaoCore。 DaoGemerator不是必需的。

有关如何生成代码和定义实体的示例,greendao-website是一个不错的选择。

根据您的描述,您需要一个具有id-property和string-property(肯定)的实体。

在你的android-project中,然后使用DevOpenHelper获取会话,并从会话中获取实体的dao(数据访问对象)。 dao包含了通过id(load ())加载数据的基本查询。

请注意,DevOpenHelper仅用于开发过程。对于最终版本,您应该扩展OpenHelper并对您在DB架构更新上采取的操作进行成本化。

答案 1 :(得分:0)

以下是我的应用程序中的一些示例代码。

DaoHelper.getInstance().getDaoSession().clear(); 
OperationDao dao = DaoHelper.getInstance().getDaoSession().getOperationDao();
String userId = "some id"
WhereCondition wc1 = new WhereCondition.PropertyCondition(OperationDao.Properties.UserId,
                " = " + userId);
WhereCondition wc2 = new WhereCondition.PropertyCondition(OperationDao.Properties.Priority,
            " > " + 4);
// Uncached is important if your data may have changed recently.
List<Operation> answer = dao.queryBuilder().where(wc1, wc2).listLazyUncached();

答案 2 :(得分:0)

This是一个关于如何学习greendao的体面教程。请务必按照其他部分的链接进行操作。

您可以使用:

daoMaster = new DaoMaster(db);
daoSession = daoMaster.newSession();
yourDao = daoSession.getYourDao();

Random() random = new Random();
List<YourObject> objects = yourDao.loadAll();
YourObject yourObject = objects.get(random.nextInt(objects.size());