greenDAO alternatives and similar packages
Based on the "ORM" category.
Alternatively, view greenDAO alternatives based on common mentions on social networks and blogs.
-
DBFlow
A blazing fast, powerful, and very simple ORM android database library that writes database code for you. -
sqlbrite
DISCONTINUED. A lightweight wrapper around SQLiteOpenHelper which introduces reactive stream semantics to SQL operations. -
android-sqlite-asset-helper
An Android helper class to manage database creation and version management using an application's raw asset files -
couchbase-lite-android
DISCONTINUED. Lightweight, embedded, syncable NoSQL database engine for Android. -
sprinkles
Sprinkles is a boiler-plate-reduction-library for dealing with databases in android applications -
SimpleNoSQL
A simple NoSQL client for Android. Meant as a document store using key/value pairs and some rudimentary querying. Useful for avoiding the hassle of SQL code. -
orman
lightweight and minimalist ORM for Java/Android. works with SQLite & MySQL. (not actively maintained) -
LiteOrm
LiteGo is a Java-based asynchronous concurrency library. It has a smart executor, which can be freely set the maximum number of concurrent at same time , and the number of threads in waiting queue. It can also set waiting policies and overload strategies. -
Kripton Persistence Library
A Java/Kotlin library for Android platform, to manage bean's persistence in SQLite, SharedPreferences, JSON, XML, Properties, Yaml, CBOR. -
SqliteMagic
Compile time processed, annotation driven, no reflection SQLite database layer for Android -
AndroidQueryORM
DISCONTINUED. AndroidQuery is an Android ORM for SQLite and ContentProvider which focuses on easy of use and performances thanks to annotation processing and code generation
InfluxDB - Power Real-Time Data Analytics at Scale
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of greenDAO or a related project?
README
Check out ObjectBox
Check out our new mobile database ObjectBox (GitHub repo).
ObjectBox is a superfast object-oriented database with strong relation support. ObjectBox is embedded into your Android, Linux, macOS, or Windows app.
greenDAO
greenDAO is a light & fast ORM for Android that maps objects to SQLite databases. Being highly optimized for Android, greenDAO offers great performance and consumes minimal memory.
Home page, documentation, and support links: https://greenrobot.org/greendao/
Features
greenDAO's unique set of features:
- Rock solid: greenDAO has been around since 2011 and is used by countless famous apps
- Super simple: concise and straight-forward API, in V3 with annotations
- Small: The library is <150K and it's just plain Java jar (no CPU dependent native parts)
- Fast: Probably the fastest ORM for Android, driven by intelligent code generation
- Safe and expressive query API: QueryBuilder uses property constants to avoid typos
- Powerful joins: query across entities and even chain joins for complex relations
- Flexible property types: use custom classes or enums to represent data in your entity
- Encryption: supports SQLCipher encrypted databases
Add greenDAO to your project
greenDAO is available on Maven Central. Please ensure that you are using the latest versions of the greendao and greendao-gradle-plugin artifact.
Add the following Gradle configuration to your Android project. In your root build.gradle
file:
buildscript {
repositories {
jcenter()
mavenCentral() // add repository
}
dependencies {
classpath 'com.android.tools.build:gradle:3.5.3'
classpath 'org.greenrobot:greendao-gradle-plugin:3.3.0' // add plugin
}
}
In your app modules app/build.gradle
file:
apply plugin: 'com.android.application'
apply plugin: 'org.greenrobot.greendao' // apply plugin
dependencies {
implementation 'org.greenrobot:greendao:3.3.0' // add library
}
Note that this hooks up the greenDAO Gradle plugin to your build process. When you build your project, it generates classes like DaoMaster, DaoSession and DAOs.
Continue at the Getting Started page.
R8, ProGuard
If your project uses R8 or ProGuard add the following rules:
-keepclassmembers class * extends org.greenrobot.greendao.AbstractDao {
public static java.lang.String TABLENAME;
}
-keep class **$Properties { *; }
# If you DO use SQLCipher:
-keep class org.greenrobot.greendao.database.SqlCipherEncryptedHelper { *; }
# If you do NOT use SQLCipher:
-dontwarn net.sqlcipher.database.**
# If you do NOT use RxJava:
-dontwarn rx.**
Homepage, Documentation, Links
For more details on greenDAO please check greenDAO's website. Here are some direct links you may find useful:
More Open Source by greenrobot
ObjectBox is a new superfast object-oriented database for mobile.
EventBus is a central publish/subscribe bus for Android with optional delivery threads, priorities, and sticky events. A great tool to decouple components (e.g. Activities, Fragments, logic components) from each other.
Essentials is a set of utility classes and hash functions for Android & Java projects.