标签: greendao

GreenDA与Sqlcipher集成示例

我使用GreenDAO设置了一个新项目,能够使用DaoGenerator使用ExampleDAO生成.一切正常.

我还在android资源文件夹中提供了一个预先填充的sqlite数据库,在app运行时,它被复制到android数据库系统路径.

现在我想与SqlCipher集成,以加密我的数据库...如果有人可以帮助或提供示例应用程序,那将是一个很大的帮助.

android sqlcipher greendao

9
推荐指数
1
解决办法
3252
查看次数

greendao从db和session中删除

我正在使用greendao进行Android项目,并想知道如何从数据库和会话缓存中正确删除和对象.目前我执行以下操作从db中删除:

ChatDao chatDao = daoSession.getChatDao();
chatDao.queryBuilder().buildDelete().executeDeleteWithoutDetachingEntities();
Run Code Online (Sandbox Code Playgroud)

但是,作为方法名称和文档状态,这可能会在会话缓存中留下过时的对象,如何从那里删除对象?

android greendao

8
推荐指数
2
解决办法
6543
查看次数

如何获得GreenDAO的最高记录?

我想从我的桌子上获得一些记录,但GreenDAO没有提供它.像这样:

SELECT TOP 1*FROM table_name

在LINQ中你可以获得最高记录Take(),GreenDAO有什么解决方案吗?

每个人都可以提出建议吗?

sqlite android greendao

8
推荐指数
1
解决办法
5153
查看次数

如何构建一个GreenDao查询来加载通过id列表指定的所有项目?

我有一个字符串列表每个字符串是通过GreenDao持久化的项目的唯一标识符.

如何构建一个允许我从我的数据库加载所有这些项目的查询?

是否有可能使用QueryBuilder执行此操作,还是需要返回编写SQL?

android greendao

8
推荐指数
1
解决办法
8377
查看次数

在greenDao中添加索引列的正确方法?

我正在greenDAO中构建数据模型.它是使用Core Data的iOS应用程序的端口.在iOS中,我们使用索引(索引?)来增加20列(属性)表中的查找性能,其中经常查询5列.我知道这会导致额外的存储空间,并且会在表中提供更慢的写入速度

在文档中进行挖掘,我偶然发现在addIndex(指数指数)方法的实体和索引()方法Property.PropertyBuilder.向实体添加索引的正确方法是什么?

Entity entity = schema.addEntity("entity");
entity.setSuperclass("SuperClass");
entity.addIdProperty();
entity.addIntProperty("property").index();
Run Code Online (Sandbox Code Playgroud)

要么

Entity entity = schema.addEntity("entity");
entity.setSuperclass("SuperClass");
entity.addIdProperty();
Property property = entity.addIntProperty("property").getProperty();
entity.setIndex(property);
Run Code Online (Sandbox Code Playgroud)

或者他们都做同样的事情?

orm android greendao

8
推荐指数
1
解决办法
4875
查看次数

了解删除和删除greenDao中的关系

第一个问题是,greenDao何时为实体生成删除功能?调用entity.delete()和之间的区别是session.getEntityDao.delete(entity)什么?

其次,如果我删除父母与父母有ToOne关系的子实体,我必须自己删除孩子,不是吗?实际上没有自动依赖"清理",是吗?

orm android greendao

8
推荐指数
1
解决办法
3720
查看次数

Android GreenDao - 仅删除特定实体的缓存对象

我在我的Android应用程序中使用GreenDao ORM.

如前所述在这里,人们可以使用

DaoSession.clear();
Run Code Online (Sandbox Code Playgroud)

为了清除会话的所有缓存对象.

我的问题是:如何清除特定实体(而不是全部)的缓存对象?我怎样才能做到这一点 ?

orm android greendao

7
推荐指数
1
解决办法
3417
查看次数

如何在GreenDAO中映射Enum

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

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

private static void main() {

    // TODO Auto-generated method stub
    static Schema blah;
    Entity unicorn = blah.addEntity("Weather");
    unicorn.addIdProperty();
    unicorn.addIntProperty("currentAirTemp");
    unicorn.addIndex("shirtSize");
}
Run Code Online (Sandbox Code Playgroud)

这是正确的方法吗?

目标:我希望引用来自套装的shirtSize:{XS,S,M,L,XL,XXL}

orm enums android greendao

7
推荐指数
3
解决办法
3150
查看次数

GreenDAO:存储其他实体中的实体列表

我正在玩GreenDAO,我想我喜欢它的工作方式.我不喜欢编写SQL代码,所以这将帮助我避免它;)

但是,我认为它确实是基于'sql'的思考你如何设置它.不确定这是不是坏事(要知道事情是如何运作的),但我只想说:这是我的对象!存放吧!但是我还没找到任何东西......

但好吧,我正在做的是以下几点:我有一个对象,让我们说一个书架.我在书架上放了一些书.

这看起来像是这样的:

class BookShelve {
    List<Book> books;

    void add(Book b) {
        books.add(b);
    }
}


BookShelve bs = new BookShelve();
Book b1 = new Book();
Book b2 = new Book();
Book b3 = new Book();
bs.add(b1);
bs.add(b2);
bs.add(b3);
Run Code Online (Sandbox Code Playgroud)

好的,现在我想用GreenDAO存储它.我需要使用'addToMany'吗?所以:

Property bookDataProperty = bookData.addLongProperty("bookShelve").getProperty();
ToMany books = BookShelve.addToMany(bookData, bookDataProperty); 
books.setName("Books");
Run Code Online (Sandbox Code Playgroud)

然后做一个:

bs.getBooks()
Run Code Online (Sandbox Code Playgroud)

得到他们?或者,还有更好的方法?

我认为应该这样做,但我还没有完全相信.

ps:上面的代码中可能有拼写错误,我只是在这里写的,还没有编译:)

编辑: 这是在我给出"回答"检查后出现的:

所以,要在书架上添加书籍,我需要:

b1.setBookShelve(bs.getId());
daoSession.insert(b1);
Run Code Online (Sandbox Code Playgroud)

对?

android greendao

7
推荐指数
1
解决办法
6252
查看次数

在Greendao中使用2个以上的数据库,使用2个不同的模式 - Android

我在项目中有2个数据库,其中一个是在我打开应用程序时创建的,另一个是由资产提供的.

生成DaoSession时,会为所有模型创建DaoSession.

gradle文件中的Schema也用于这两个数据库

如何区分2个数据库及其模式?

android greendao greendao3

7
推荐指数
2
解决办法
923
查看次数

标签 统计

android ×10

greendao ×10

orm ×4

enums ×1

greendao3 ×1

sqlcipher ×1

sqlite ×1