DAO、Service、Controller、Model、View的簡單思考

前言

最近??谔鞖饴詾闈駸幔旧夏X子也處于腐朽的狀態(tài)。最近師傅和哥哥叫我碰了JFinal這個RESTful這個輕量級的框架。感覺脫離了視頻自學還是那么困難,只發(fā)現(xiàn)一味地去翻手冊索然無味,然后就是一堆概念的襲來。DAO、Model、Service、Controller、 View。什么玩意啊,從Servlet和JSP跳到這一塊我感覺很懵蔽,特別是AOP那一部分本身就感覺Spring的AOP已經(jīng)很難去理解,還要火上澆油。

正文

首先是MVC這個概念俗稱Model-View-Controller的縮寫。其實談不上設(shè)計模式,他只是存在在表現(xiàn)層的一種模式。我們可以來簡單看一下一般流程是什么加深我自己的理解

1.首先是用戶通過瀏覽器在頁面上發(fā)生操作比如說發(fā)微博(當然微博怎么具體操作我不知道我只能稍微敏感下)那么輸入完內(nèi)容肯定是發(fā)表了,這一瞬間就會提交給服務(wù)器

2.根據(jù)提交的這個請求跳轉(zhuǎn)到Controller層的具體Action處理,那么接著它會調(diào)用可以提供發(fā)微博這項服務(wù)的Service去

3.然后就是通過Service去調(diào)用DAO(持久層)全稱Data Acess Object,那么DAO是干什么的呢?DAO其實就是封裝出來和底層數(shù)據(jù)庫進行操作的對象。(狹義理解廣義其實只要對數(shù)據(jù)有操作都可以算DAO,比如說對數(shù)據(jù)的寫入硬盤)

4.DAO再通過對數(shù)據(jù)庫進行CRUD的操作再更改model對象model對象其實就是一個封裝了數(shù)據(jù)的對象(方便進行操作),其實通過fastjson解析這個對象其實可以轉(zhuǎn)換為json數(shù)組進行傳輸!

上面只是我對這幾個概念的簡單理解希望以后能多寫些代碼再去加深理解

其他

稍微來說一下RESTful這個概念REST全稱(Resource)Representational State Transfer 中文來說就是資源在表現(xiàn)層進行狀態(tài)轉(zhuǎn)換

我們想讓表現(xiàn)層狀態(tài)發(fā)生轉(zhuǎn)變,只能用到HTTP協(xié)議了,那么只能靠GET(獲取資源)、PUT(更新資源)、POST(創(chuàng)建資源)、DELETE(刪除資源)。

  • 每一個URI代表資源

  • 客戶端和服務(wù)器之間,傳遞這種資源的某種表現(xiàn)層;

  • 客戶端通過四個動詞,對服務(wù)器資源進行操作,實現(xiàn)“表現(xiàn)層狀態(tài)轉(zhuǎn)化”。

總的來說就是通過設(shè)計服務(wù)器端的RESTful的API讓客戶端訪問URI的時候充分利用HTTP協(xié)議,讓URI符合RESTful這種風格

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容