ORM其全稱叫做對象關係映射(Object Relation Mapping),是一種程序設計技術,用於實現面向對象編程語言裏不同類型系統的數據之間的轉換。它實際是創建了一個可在編程語言裏使用的“虛擬對象數據庫”。
衆所周知,我們在Android開發中使用的java是一種面向對象的編程語言。面向對象是從軟件工程基本原則(如耦合、聚合、封裝)的基礎上發展起來的,而關係數據庫則是從數學理論發展而來的。這兩者之間從基本原理上是不一致的,此刻,ORM作爲項目中間件形式實現數據在不同場景下數據關係映射。對象關係映射是一種爲了解決面向對象與關係數據庫存在的互不匹配的現象的技術,ORM就是這樣而來的。
目前比較成熟的ORM框架有:ORMLite、GreenDao、ormdroid、androrm、ActiveAndroid。本文主要介紹當下比較流行的兩個框架:ORMLite和GreenDao。根據本人的實戰經驗,推薦大家使用GreenDao。
http://greenrobot.org/greendao/
greenDAO’s Features at a glance
Maximum performance (probably the fastest ORM for Android); our benchmarks are open sourced too
Easy to use powerful APIs covering relations and joins
Minimal memory consumption
Small library size (<100KB) to keep your build times low and to avoid the 65k method limit
Database encryption: greenDAO supports SQLCipher to keep your user’s data safe
Strong community: More than 5.000 GitHub stars show there is a strong and active community