學習MVC我作了一些筆記,在學習MVC以前呢,咱們須要先了解和MVC一塊兒使用的小夥伴們web
作事情要抓重點:sql
爲何要學MVC
MVC的好處
MVC如何使用,MVC的特色
MVC的原理
這種MVC模式可否擴展數據庫
-》ORM 框架緩存
1.從廣義上理解:ORM框架 面向對象的對象模型和關係型數據庫的數據結構之間的轉換
從狹義上理解:ORM能夠被認爲是,基於關係型數據庫的數據存儲,實現一個虛擬的面向對象的數據訪問接口。數據結構
-》EF框架(Entity Framework)
一種ORM框架→工做機制:<1>追蹤實體 <2>生成sql語句 <3>調用ado.net執行數據庫操做
csdl:概念架構定義語言
ssdl:存儲架構定義語言(邏輯模型)
msl:映射架構語言
簡稱:EDM .edmx 本質就是一個xml文件
EF經過EntityClient(基於Provider模式),與ADO.NET 2.0類似。向EDM發送EntitySql操做Entity,ADO.NET 2.0是向數據庫發送sql。全部發往EDM的操做都要通過EntityClient,包括Linq to Entity架構
優缺點:
優勢:可使用XML進行定義,能夠動態添加對象映射到數據庫中(生成DDL-Data Define Language),改動數據庫不會影響bll業務邏輯層
缺點:EF第一次運行的時候,須要對EDM進行分析讀取,致使有些慢,之後不會慢
提供從關係數據庫構架到對象的映射框架
延遲加載機制(若是啓用屬性,啓用延遲加載)
優勢:用的什麼數據纔去查,有利於性能
缺點:數據了太大的時候一下加載到內存中,內存會爆掉(使用foreach的時候)
外鍵太多會影響性能(查主表的時候,若是用到子表會把子表查出來),不要訪問子表太多
EF上下文維護有三種方式(避免多個上下文,避免髒數據):
<1>全局惟一,只用一個上下文,缺點:EF有緩存,當數據漸漸增多時,緩存會吃掉內存,pass掉
<2>在web開發中,一次請求中用一個實例,請求解除,釋放掉
<3>線程惟一,一個線程有一個上下文實例
補充:DataSet類很是相似於數據庫的結構,它包含DataTable,DataRow,DataColumn和DataRelation類,而不提供對象支持ide