问题标签 [greendao]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
212 浏览

greendao - DaoGenerator 抛出异常

我刚开始使用 greenDao,但我无法初始化 DaoGenerator:调用new DaoGenerator();会引发异常

de.greenrobot.daogenerator.DaoGenerator.(DaoGenerator.java:60) 处的 java.lang.ExceptionInInitializerError

这是我的代码:

非常感谢您的帮助!

0 投票
2 回答
3569 浏览

android - greenDao 获取自增 ID

我有什么方法可以获取表行的下一个可用 ID(在表中插入行时会自动创建),所以我不会被迫在给定时间插入该行来获取它?

更准确地说:我有一个包含列表视图的活动,并且每个项目都是使用第二个活动添加的。当我在第二个活动中完成添加项目详细信息时,我通过一个可打包对象传递该项目(我将 Parcelable 接口实现到 DaoGenerator 创建的持有者类之一)。该对象的 id 值不能为空,使用 writeLong(id) 传递它,并在我的 Parcelable 方法中使用 readLong() 接收它,所以我必须通过插入当前项目来自动生成 id 值数据库。我想做的是:生成这些ID(不将项目插入数据库),将该项目传递给第一个活动,当用户决定从列表中保存所有这些项目时,我会将它们全部添加到数据库中单笔交易。

我有一些示例代码:

}

这就是我创建项目并将其发送到列表的方式:

0 投票
2 回答
3952 浏览

java - 如何像 GreenDao 中的“UPDATE table SET col1='val1'”一样更新

我只是找不到如何只更新几列。

我的理解是:“ UPDATE table SET name = 'name111' where id = 1”;

怎么办?

谢谢!

0 投票
1 回答
710 浏览

android - 具有多个相同类型的一对多关系的实体和GreenDAO

GreenDAO 生成的实体必须是这样的:

我知道它在给定类型的列表上是如何工作的。

问题是我不确定生成的代码是否可以知道B对象是bList1还是bList2。

0 投票
1 回答
1394 浏览

android - SQLite/GreenDAO 会话范围

我正在为 Android 编写一个小型应用程序,并使用 GreenDAO 作为我的 ORM。我想知道我应该保持会话打开多久?我有几个从数据库读取/写入数据的活动,我看到以下可能性:

  1. 根据活动保持会话打开:在 onCreate 中创建并在 onPause/onStop 中关闭
  2. 在所有活动中保持一个会话打开,并在它们之间以某种方式传递它。
  3. 在 onCreate 中打开会话,读取填充列表视图所需的所有数据并在仍处于 onCreate 时关闭 - 我认为这迫使我一次读取所有数据,但这会大大降低应用程序的速度。

你认为我应该选择哪个选项?也许还有其他一些规范的方法可以做到这一点?

0 投票
0 回答
302 浏览

android - 使用greendao重新链接数据库的好方法是什么?

我在开发 Android 应用程序和一般使用数据库方面有点菜鸟,所以请记住这一点。

设置:我正在构建一个从服务器接收jsondata的应用程序,用gson解析,制作成greendao生成的类的对象,然后插入数据库。

我的问题:插入的对象没有任何本地链接层次结构。目前,父 id 仍然存储在对象中,因此可以通过手动遍历所有对象来设置。我的方法如下所示:

这行得通,但它真的是正确的方法吗?

0 投票
3 回答
3427 浏览

android - 如何在 GreenDAO 中映射 Enum

我刚开始使用greenDAO。如何添加枚举属性?

我的想法:使用实体的 addIndex 属性。

这是正确的方法吗?

目标:我想参考来自集合的 shirtSize:{XS, S, M, L, XL, XXL}

0 投票
2 回答
2608 浏览

android - Android Studio、NavDrawer 和支持库问题

我在使用 gradle 的 Android Studio 项目中使用 android 支持库时遇到问题。如果我将支持库添加为依赖项,我将收到“错误:Gradle:任务':AppName:dexDebug'的执行失败。我做了一些研究,发现使用支持库和其他正在使用的依赖项的问题支持库也是如此(greendao 1.3.0)。我想在我的应用程序中使用 NavDrawer,所以我必须使用这些支持库。如果我删除支持库,我当然会收到“膨胀错误” android.support.v4.widget.DrawerLayout”。

这里有人有想法吗?

我使用了两种依赖项导入编译文件('libs/android-support-v13.jar')并编译'com.android.support:support-v4:13.0.0' 导致在论坛中找到帖子。但这也行不通。

谢谢你的支持。

问候, 海洋

0 投票
1 回答
282 浏览

android - 从 Android 项目动态访问 GreenDAO 生成器项目

是否有可能从使用 GreenDAO 的 Android 项目动态(在运行时)访问生成器项目中定义的数据库模型结构信息(实体、属性、模式......)?

我的第一印象是这是不可能的。如果是,我该怎么做?

感谢您的回答。

0 投票
0 回答
182 浏览

java - 如何为这个 Android 项目构建 Java 类以表示数据库中的子关系?

我正在通过 fork 和修改开源应用程序 FrontlineSMS for Android 来学习 Android。这是我的副本

我想在数据库中添加几个表 Poll 和 PollResponse,其中 Poll->PR 是一对多的关系。

我已经为项目添加了 Poll 类。定义 PollResponse 对象的“正确”方式是什么?

保存投票数据发生在Keyword.java 的第 562 行,并以某种方式将一行添加到数据库中,并为该行创建了一个新 ID。这是我还想将几行保存到 PollResponse(尚不存在)并将其 id_poll 字段分配给新创建的 Poll 行的值的地方。作为 src/net/frontlinesms/android/model/Poll.java 或 /src/net/frontlinesms/android/model/PollDao.java 的一部分,是否有一种干净的方法来完成这种子关系?还是我需要创建完全独立的 PollResponse 对象,保存 Poll 的数据,然后在数据库中查询新创建的 ID 并将其保存在 PollResponses 中?后者是我能想到的唯一方法,但它看起来很难看。我也尝试四处寻找解决方案,但我可能没有正确的关键字。

我发现了如何通过创建 Poll.java 和 PollDao.java 并将类添加到 /src/net/frontlinesms/android/db/FrontlineSmsSqliteHelper.java 来创建新表 Poll ,但我主要是在摸索这个项目,阅读 Android开发指南和反复试验。抱歉缺少链接,我只允许 2 个,直到我获得超过 10 个声望。谢谢你的帮助!

*编辑 - 是否可以重写这个项目以使用像 greenDAO 这样的 ORM?同样,我仍在学习 Android,所以我不确定该项目是否使用任何打包的 ORM。好像是自定义写的。