Articles of greendao

greendao从数据库和会话中删除

我正在使用greendao为一个android项目,并想知道如何正确删除和从数据库和会话caching对象。 目前我做了以下从数据库中删除: ChatDao chatDao = daoSession.getChatDao(); chatDao.queryBuilder().buildDelete().executeDeleteWithoutDetachingEntities(); 然而,作为方法名称和文档状态,这可能会在会话caching中留下陈旧的对象,我怎样才能从那里删除对象呢?

GreenDAO:将实体列表存储在其他实体中

我正在玩GreenDAO,我想我喜欢它的工作方式。 我不喜欢写SQL代码,所以这将帮助我避免它;) 但是,我认为这确实是非常“sql”的基础上思考如何设置它。 不知道这是不是一件坏事(知道事情是如何工作的),但我宁愿说:这是我的对象! 存储它! 但是我还没有find任何东西呢… 但是,好的,我正在做的是以下几点:我有一个对象,让我们说一个书架。 我在书架上放了些书。 这看起来像这样: 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); 好的,现在我想用GreenDAO来存储这个。 我需要使用“addToMany”吗? 所以: Property bookDataProperty = bookData.addLongProperty("bookShelve").getProperty(); ToMany books = BookShelve.addToMany(bookData, […]

GreenDAO如何获得最高logging?

我想从我的桌子上得到一些logging,但是GreenDAO不提供它。 喜欢这个: SELECT TOP 1 * FROM table_name 在LINQ中,您可以使用Take()获得最高logging,GreenDAO有没有解决scheme? 每个人都可以提供一个build议吗?

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

第一个问题是,greenDao什么时候为一个实体生成一个删除函数? 调用entity.delete()和session.getEntityDao.delete(entity)什么区别? 其次,如果我删除一个与父母有一个关系的孩子的父母实体,我必须自己去除孩子,不是吗? 其实没有自动依赖的“清理”完成,是吗?

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

我正在greenDAO中构build一个数据模型。 它是使用核心数据的iOS应用程序的端口。 在iOS中,我们使用索引(索引?)来提高20列(属性)表中的查询性能,其中经常查询5列。 我知道这会导致额外的存储空间,并提供较慢的表写入。 在文档挖掘中,我遇到了Entity中的addIndex(Index index)方法和Property.PropertyBuilder中的index()方法。 哪一个是正确的方式来添加一个实体的索引? Entity entity = schema.addEntity("entity"); entity.setSuperclass("SuperClass"); entity.addIdProperty(); entity.addIntProperty("property").index(); 要么 Entity entity = schema.addEntity("entity"); entity.setSuperclass("SuperClass"); entity.addIdProperty(); Property property = entity.addIntProperty("property").getProperty(); entity.setIndex(property); 还是他们都做同样的事情?

Android无法使用greendao使用sqlcipherencryption数据库

我正在使用greendao ORM。 我正在尝试使用SQLCipherencryption我的数据库。 Greendao自动支持sqlcipher。 所以我写了下面的代码进行encryption。 DaoMaster.DevOpenHelper helper = new DaoMaster.DevOpenHelper(context, "encrypted-db",null); Database db = helper.getEncryptedWritableDb("mySecretPassword"); DaoSession session = new DaoMaster(db).newSession(); return session; 但是每当我使用这个会话执行任何数据库操作时,它都会给出一个错误 Caused by: java.lang.NoClassDefFoundError: Failed resolution of: Lorg/greenrobot/greendao/database/DatabaseOpenHelper$EncryptedHelper; at org.greenrobot.greendao.database.DatabaseOpenHelper.checkEncryptedHelper(DatabaseOpenHelper.java:121) at org.greenrobot.greendao.database.DatabaseOpenHelper.getEncryptedWritableDb(DatabaseOpenHelper.java:133) 我的gradle依赖是 – > compile fileTree(include: ['*.jar'], dir: 'libs') testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:24.2.0' compile 'org.greenrobot:greendao:3.2.0' compile 'com.google.code.gson:gson:2.8.0' 我的proguard规则是 -keepclassmembers class * extends […]

GreenDAO与Sqlcipher集成示例

我已经使用GreenDAO设置了一个新项目,能够使用DaoGenerator生成ExampleDAO。 一切工作正常。 我也有一个预先填充的Android资产文件夹的数据库,在应用程序运行,它被复制到Android数据库系统path。 现在我想与SqlCipher集成,我的数据库encryption…如果有人可以帮助或给示例应用程序,这将是一个很大的帮助。

Android – 在GreenDao数据库中添加默认值

我想问一下,在创buildgreenDao数据库的时候是否有添加默认值的可能? Example: Property pictureIdProperty = user.addLongProperty("pictureId").getProperty(); Property thumbnailIdProperty = user.addLongProperty("thumbnailId").getProperty(); //and here I need something like this: //thumbnailIdProperty.setDefault(-1); //there is possible to add user.addToOne(picture, pictureIdProperty); user.addToOne(picture, thumbnailIdProperty, "thumbnail"); 而当我使用数据库和这个表,那么没有必要总是添加默认值,当我创build这个模型。

与内容提供商一起使用Green DAO

我打算在我的项目中使用GreenDAO 。 我已经通过创build一个testing项目来testing它。 但是,我有几个要求,我需要履行。 我的应用程序的数据库将被encryption。 为此,我们计划使用SQLCipher 。 我发现这个链接 。 我正在研究它,但有兴趣知道原始的GreenDAO项目中是否有任何可用的东西。 由于我的应用程序将数据同步到服务器/从服务器,我将使用SyncAdapter,因为我不想做所有已经由Android框架完成的自我重组。 但是它需要Content Provider来处理。 那么,我怎样才能使用GreenDAO和Content Provider 。 更新2 我的项目有七个实体。 我用实体上的addContentProvider() 。 生成七个不同的内容提供者。 有没有办法让一个内容提供商中的所有sqlite表?

greendao:debugging查询的方法?

有没有办法让greendao spit查询进入Logcat? 我只想保证所有的工作都能正常工作,而且习惯这个系统的时候,这将是一个很好的function。