ORM框架
為什么要使用ORM?摘選網絡的話:
默認的防注入,使用SQL配合一些規范可以避免注入;
查詢條件的動態構造,比如我想根據用戶的不同參數來組合不同的查詢,使用ORM只要在query對象里追加條件就可以,而交給SQL幾乎不可能干凈又安全的做到;
容易插鈎子集成自動的緩存失效(未懂)
主要觀點在於安全的防注入以及編程思想的轉變。我個人在開發過程中,雖沒有用到ORM,但感覺思路不清晰,安全方面的東西沒有考慮到。(感覺最大的改變還是編程思想的改變)ORM對簡單的數據庫可以很好實現,但一旦涉及到關聯查詢、修改就會變得比較復雜,有時候一段SQL就可以完成的代碼,在ORM這里就會有很多代碼,而且效率也大打折扣。
摘選百度百科背景:
長久以來,程序設計師和數據庫總是保持着一種微妙的關系,在商用應用程序中,數據庫一定是不可缺少的元件,這讓程序設計師一定要為了連接與訪問數據庫去學習SQL指令,因此在信息業中有很多人都在研究如何將程序設計模型和數據庫集成在一起,ORM技術應運而生。
EF框架使用心得
EF全稱Entity Framework,它是以ADO.NET為基礎發展起來的對象關系對應(ORM)解決方案,它以Entity Data Model為主,將數據邏輯層切分為3塊,分別為Conceptual Schema,Mapping Schema與Storage Schema三層,其上還有Entity Client,Object Context以及LINQ可以使用。
EF利用了抽象化數據結構的方式,將每個數據庫對象都轉換成應用程序對象,而數據字段都轉換為屬性,關系則轉換為結合屬性,讓數據庫的E/R模型完全轉換成對象模型,如此讓程序設計師能用最熟悉的編程語言來調用訪問。
