mvc是什么?
mvc(模型Model-視圖View-控制器Controller)是一種設計模式,
M(Model)在Java Web里說的是JavaBean,在JavaBean中除了其屬性和字段,還可以有行為及其事件,JavaBean可以理解為普通Java對象。Java普通對象,就是符合Java規(guī)范的所有對象,這和實體類完全是兩回事。業(yè)務邏輯和數(shù)據(jù)訪問應該放在Model層,也就是V負責展示數(shù)據(jù),Controler除了轉(zhuǎn)發(fā)不做業(yè)務邏輯。真正的邏輯事務,數(shù)據(jù)訪問,甚至算法都放到Model去。
Controller是控制器的意思,所謂控制器,就是將用戶請求轉(zhuǎn)發(fā)給模型層,經(jīng)過處理后把結果返回到界面層展現(xiàn)的一個中間層,那么Controller到底管什么工作呢?先不說.先來看下在Java Web中這三個層一般的定義,一般在Java Web里,JSP充當V,Servlet充當C,JavaBean充當M,這里的Servlet管什么工作呢?接受輸入,轉(zhuǎn)到Model層去處理,處理結果保存后轉(zhuǎn)發(fā)到JSP,然后展現(xiàn)數(shù)據(jù)。所以它的功能就是控制器的基本功能,它就管轉(zhuǎn)發(fā),在V和M之間轉(zhuǎn)來轉(zhuǎn)去。
MVC沒有把業(yè)務的邏輯訪問看成兩個層,這是采用三層架構或MVC搭建程序最主要的區(qū)別。當然了。在三層中也提到了Model,但是三層架構中Model的概念與MVC中Model的概念是不一樣的,“三層”中典型的Model層是已實體類構成的,而MVC里,則是由業(yè)務邏輯與訪問數(shù)據(jù)組成的。