Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/greenrobot/greenDAO
greenDAO is a light & fast ORM solution for Android that maps objects to SQLite databases.
https://github.com/greenrobot/greenDAO
Last synced: about 2 months ago
JSON representation
greenDAO is a light & fast ORM solution for Android that maps objects to SQLite databases.
- Host: GitHub
- URL: https://github.com/greenrobot/greenDAO
- Owner: greenrobot
- Created: 2011-10-22T16:15:14.000Z (about 13 years ago)
- Default Branch: master
- Last Pushed: 2024-04-30T05:30:59.000Z (8 months ago)
- Last Synced: 2024-10-14T12:03:11.067Z (about 2 months ago)
- Language: Java
- Homepage: http://greenrobot.org/greendao/
- Size: 7.01 MB
- Stars: 12,626
- Watchers: 523
- Forks: 2,891
- Open Issues: 235
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
Awesome Lists containing this project
- stars - greenrobot/greenDAO
- awesome-android - greenDAO
- awesome-android-ui - https://github.com/greenrobot/greenDAO
- awesome-android-ui - https://github.com/greenrobot/greenDAO
- awesome - greenDAO - greenDAO is a light & fast ORM solution for Android that maps objects to SQLite databases. (etc)
- awesome - greenDAO - greenDAO is a light & fast ORM solution for Android that maps objects to SQLite databases. (etc)
README
⚠️ **This project is not longer actively maintained.** If you are looking for an easy to use and efficient database solution,
please:Check out ObjectBox
===================**Check out our new mobile database [ObjectBox](https://objectbox.io/) ([GitHub repo](https://github.com/objectbox/objectbox-java)).**
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/**
[![Build Status](https://travis-ci.org/greenrobot/greenDAO.svg?branch=master)](https://travis-ci.org/greenrobot/greenDAO)
[![Follow greenrobot on Twitter](https://img.shields.io/twitter/follow/greenrobot_de.svg?style=flat-square&logo=twitter)](https://twitter.com/greenrobot_de)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 databasesAdd greenDAO to your project
----------------------------
greenDAO is available on Maven Central. Please ensure that you are using the latest versions of the [greendao](https://search.maven.org/search?q=g:org.greenrobot%20AND%20a:greendao) and [greendao-gradle-plugin](https://search.maven.org/search?q=g:org.greenrobot%20AND%20a:greendao-gradle-plugin) artifact.Add the following Gradle configuration to your Android project. In your root `build.gradle` file:
```groovy
buildscript {
repositories {
jcenter()
mavenCentral() // add repository
}
dependencies {
classpath 'com.android.tools.build:gradle:'
classpath 'org.greenrobot:greendao-gradle-plugin:3.3.1' // add plugin
}
}
```
In your app modules `app/build.gradle` file:
```groovy
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](https://greenrobot.org/greendao/documentation/how-to-get-started/) page.
R8, ProGuard
------------If your project uses R8 or ProGuard add the following rules:
```bash
-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](https://greenrobot.org/greendao). Here are some direct links you may find useful:[Features](https://greenrobot.org/greendao/features/)
[Getting Started](https://greenrobot.org/greendao/documentation/how-to-get-started/)
[Documentation](https://greenrobot.org/greendao/documentation/)
[Changelog](https://greenrobot.org/greendao/changelog/)
[Technical FAQ](https://greenrobot.org/greendao/documentation/technical-faq/)
[Non-Technical FAQ](https://greenrobot.org/greendao/documentation/faq/)
[Migrating to greenDAO 3](https://greenrobot.org/greendao/documentation/updating-to-greendao-3-and-annotations/)
More Open Source by greenrobot
==============================
[__ObjectBox__](https://github.com/objectbox/objectbox-java) is a new superfast object-oriented database for mobile.[__EventBus__](https://github.com/greenrobot/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__](https://github.com/greenrobot/essentials) is a set of utility classes and hash functions for Android & Java projects.