问题标签 [greendao-generator]

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 投票
1 回答
415 浏览

android - 如何覆盖生成的数据库表类中的接口方法?

我在我的 Android 项目中使用 GreenDao,并且我已经成功生成了我的数据库模式,但我遇到了一个问题。我生成的类需要实现一个与 db 无关的接口。在生成器中,我使用了以下方法:

myEntity.implementsInterface("com.my.app.myinterface");

然后在生成之后,该类在其标题中具有此接口的实现注释,但代码中当然没有 Override 方法。我尝试在生成器项目中放置一个带有我的接口的包,但仍然不会自动出现方法。我应该手动将它们插入

// KEEP METHODS - put your custom methods here ... // KEEP METHODS END

部分?

0 投票
1 回答
127 浏览

android - GreenDao 发电机许可证问题

我在一个项目中使用 greendao,我喜欢它,但要确保我再次检查了许可证。所以我在这里读到,生成器是在 GPL v3 下获得许可的。

这是否意味着生成的类也在 GPL v3 下获得许可,因此不能在商业(闭源)应用程序中使用?

0 投票
0 回答
851 浏览

android - 使用 greenDAO 将 JSON 字符串映射到对象

我有这个 JSON 响应,我希望映射到我的对象中:

我所做的是在我的主对象中创建了一对多属性,但是我不确定如何映射没有键的字符串属性,并且改造给出了这个错误:

应为 BEGIN_OBJECT,但找到了 STRING。

我的生成器中的对象映射如下所示:

显然这是因为在第 5 行中,我正在以我期望它是"ids"键的值的方式创建属性,但是我应该在这里放什么呢?

0 投票
1 回答
2665 浏览

java - 如何在 android 中使用 GreenDao 为 DB 添加初始数据?

我一直是在本机模式下插入初始数据的答案

如何将初始数据添加到 SQLite 数据库?

如何使用 Green dao 获得相同的结果?

这是我的应用程序类

0 投票
1 回答
147 浏览

android - 绿色 DAO 关系

这是我的代码:

根据结构,topic_id是表中的主,是、和表中的外键TopicUserActionReplies

我从Topic表中得到了正确的值。但是当我尝试基于topic_id.

任何帮助表示赞赏。

0 投票
0 回答
196 浏览

android - 为 GreenDAO 关系之前的属性设置 codeBeforeField

我最近开始在我的 Android 应用程序中使用 GreenDao,我正在创建一个 Category 实体,它应该有多个 Category 实体作为子实体。因此我使用树关系如下:

这是根据需要创建正确的代码,我有以下内容:

问题

问题是我需要在此属性之前使用 @SerializedName 属性,因为我正在将一些具有不同字段名称的 json(从另一个服务获得)解析到这些 Category 实体中。

对于其他属性,我正在使用正确生成属性的 codeBeforeField() 方法:

有没有办法在这个'children'属性上设置codeBeforeField以添加@SerializedName属性?或者也许还有其他方法可以在我的“孩子”属性之前生成这个属性?

我已经尝试寻找在关系上设置此方法的方法,但似乎此方法仅在 PropertyBuilder 上可用。有没有办法从 ToMany 关系中检索 PropertyBuilder ?

任何帮助,将不胜感激。谢谢你。

0 投票
1 回答
488 浏览

java - 升级存在表greendao android studio

根据这个堆栈溢出 greenDao Schema 升级

家伙“DiscDev”回答了他自己的问题,但我有一个问题,关于以下代码的 onUpgrade 方法:

老版本和新版本的数量他怎么知道老版本是3,新版本是4?还有为什么它需要是硬代码而不是常量的声明?

0 投票
0 回答
209 浏览

android - GreenDao 按索引加载

我有一个带有复合键的实体。按照这里的建议,我的 DaoGenerator 中有以下代码,它基于两个long属性创建索引。

如何通过索引检索实体?我期待类似的东西,mDaoSession.getTransactionDbDao().loadByIndex()但没有这样的方法。

0 投票
0 回答
407 浏览

android - 现在有什么办法可以让greenDAO支持android数据绑定?

使用greenDAO库时,需要使用greendao-generator生成相关的POJO和XXXDAO、DAOSession、DAOMaster类。就像这里的 POJO 类一样:Note.java

每次更改模型时,都需要重新生成此代码。

Android数据绑定可以通过让你的数据对象能够在数据变化时通知来使用。但在此之前,你需要修改你的POJO类。有不同的数据变化通知机制:数据对象

1.实现接口,在setter中Observable分配Bindable注解和调用方法。notifyPropertyChanged()

2.使用 ObservableFields 或 Observable 集合:

那么,如果我们想同时使用greenDAOAndroid数据绑定,需要手动修改自动生成的文件吗?如果您的项目很大,我相信这是一项非常大量的工作。或者现在有什么优雅的方法可以让greenDAO支持android数据绑定?

期待你的答复!谢谢!

0 投票
1 回答
203 浏览

android - 游戏商店更新的绿道更新专栏已经发生

这是我的生成器类

这是我从 dao 会话中获取 abc dao 的代码。这工作正常。

我又添加了一列

在生成器中创建AbcDB 到新版本的应用程序。一旦用户得到更新,他们就会得到 sql 异常,说没有找到列。因为我正在调用新的登录

但问题是我已经给了一次登录,用户总是会在从 Play 商店升级时进入登陆屏幕。所以我不知道用户是否为了删除和创建所有表而升级了应用程序。

所以我的问题是如何知道我的桌子已经改变了?