ActiveRecord 也屬于 ORM 層,由 Rails 最早提出,遵循標準的 ORM 模型:表映射到記錄,記錄映射到對象,字段映射到對象屬性。配合遵循的命名和配置慣例,能夠很大程度的快速實現模型的操作,而且簡潔易懂。
ActiveRecord 的主要思想是:
1. 每一個數據庫表對應創建一個類,類的每一個對象實例對應于數據庫中表的一行記錄;通常表的每個字段在類中都有相應的 Field ;
2. ActiveRecord 同時負責把自己持久化,在 ActiveRecord 中封裝了對數據庫的訪問,即 CURD; ;
3. ActiveRecord 是一種領域模型 (Domain Model) ,封裝了部分業務邏輯;
ActiveRecord 比較適用于:
1. 業務邏輯比較簡單,當你的類基本上和數據庫中的表一一對應時 , ActiveRecord 是非常方便的,即你的業務邏輯大多數是對單表操作;
2. 當發生跨表的操作時 , 往往會配合使用事務腳本 (Transaction Script) ,把跨表事務提升到事務腳本中;
3. ActiveRecord 最大優點是簡單 , 直觀。 一個類就包括了數據訪問和業務邏輯 . 如果配合代碼生成器使用就更方便了;
這些優點使 ActiveRecord 特別適合 WEB 快速開發。