1. 程式人生 > >ORM的概念, ORM到底是什麽

ORM的概念, ORM到底是什麽

建立 關系模型 簡單的 基礎上 tex 希望 進行 ron 代碼

概念

對象-關系映射(OBJECT/RELATIONALMAPPING,簡稱ORM),是隨著面向對象的軟件開發方法發展而產生的。用來把對象模型表示的對象映射到基於S Q L 的關系模型數據庫結構中去。這樣,我們在具體的操作實體對象的時候,就不需要再去和復雜的 SQL語句打交道,只需簡單的操作實體對象的屬性和方法。O R M 技術是在對象和關系之間提供了一條橋梁,前臺的對象型數據和數據庫中的關系型的數據通過這個橋梁來相互轉化。 ORM解決的主要問題是對象關系的映射。   域模型和關系模型分別是建立在概念模型的基礎上的。域模型是面向對象的,而關系模型是面向關系的。一般情況下,一個持久化類和一個表對應,類的每個實例對應表中的一條記錄,類的每個屬性對應表的每個字段。

ORM技術特點:
1.提高了開發效率。由於ORM可以自動對Entity對象與數據庫中的Table進行字段與屬性的映射,所以我們實際可能已經不需要一個專用的、龐大的數據訪問層。
2.ORM提供了對數據庫的映射,不用sql直接編碼,能夠像操作對象一樣從數據庫獲取數據。

ORM的優缺點
ORM的缺點是會犧牲程序的執行效率和會固定思維模式。
從系統結構上來看,采用ORM的系統一般都是多層系統,系統的層次多了,效率就會降低。ORM是一種完全的面向對象的做法,而面向對象的做法也會對性能產生一定的影響。

在我們開發系統時,一般都有性能問題。性能問題主要產生在算法不正確和與數據庫不正確的使用上。ORM所生成的代碼一般不太可能寫出很高效的算法,在數據庫應用上更有可能會被誤用,主要體現在對持久對象的提取和和數據的加工處理上,如果用上了ORM,程序員很有可能將全部的數據提取到內存對象中,然後再進行過濾和加工處理,這樣就容易產生性能問題。

在對對象做持久化時,ORM一般會持久化所有的屬性,有時,這是不希望的。
但ORM是一種工具,工具確實能解決一些重復,簡單的勞動。這是不可否認的。但我們不能指望工具能一勞永逸的解決所有問題,有些問題還是需要特殊處理的,但需要特殊處理的部分對絕大多數的系統,應該是很少的。

ORM的概念, ORM到底是什麽