greenDAO is a light & fast ORM solution 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: http://greendao-orm.com/
- New AsyncSession (acquired from DaoSession.startAsyncSession()) provides most operations for DAOs, Queries, and transactions in a asynchronously variant
- AsyncOperations are processed in order by a background thread
- waitForCompletion methods for AsyncSession and AsyncOperations
- AsyncOperationListener for asynchronous callback when operations complete
- Asynchronous operations can be merged in single transactions (details follow)
- Added raw SQL queries returning a Query object (LazyList support etc.)
- Limited support of String PKs (no relations using String FKs yet)
- Fixed index creation (please update your schema)
- Added CountQuery for creating SELECT COUNT (*) queries with QueryBuilder
- Added getDatabase in DaoMaster, DaoSession, and Dao
- Added insertOrReplaceInTx in Dao
- Added deleteInTx in Dao
- Added autoincrement() creating AUTOINCREMENT PKs
- Made DAOs and DaoSessions in active entities transient (allows serialization of entities)
- Minor fixes
- Demo projects works with ADT 17 (moved greendao.jar into libs)
- CREATE/DROP TABLE may be skipped for entity types: This allows having multiple entity tapes operate on one table
- Minor improvements
- Added NOT IN condition for QueryBuilder
- Fix for Roboelectric (Issue #22)
- Minor fix (Issue #5)
- DeleteQuery for bulk deletes
- Entities may implement Java interfaces
- Entities may extend a Java class
- Added LIMIT and OFFSET support for QueryBuilder and Query
- Convenience methods to add named relationships
- SQL scripts are executed in a transaction by default
- Fixed queries with special column names (SQL keywords)
- Changed default names for to-many relations to end with "List"
- ORDER BY uses LOCALIZED collation for strings by default
- Fixed generation of to-many relations
- Fixed generated import statements when entities/DAO are not in the same package
- To-many relations (lazily loaded on the entities)
- To-many relations with custom join properties
- Active entities can be updated, refreshed, and deleted directly
- Significant performance improvements (faster identity scope, faster database result parser)
- "Keep sections" for custom code in entities were added that won't be overwritten during code generation
- Other minor improvements
http://greendao-orm.com/2011/08/19/query-builder-and-lazy-loading-lists/