一。DAO類:
一個DAO類封裝的是針對某一個表的增刪改查實現(xiàn)細(xì)節(jié)
二。Service類:業(yè)務(wù)處理類/服務(wù)類
一個Service類封裝的一組關(guān)聯(lián)的業(yè)務(wù)實現(xiàn)的細(xì)節(jié)
三。業(yè)務(wù):
1.【定義】: 一個業(yè)務(wù)即為用戶的一個請求。真實的場景中
用戶的一個業(yè)務(wù)中往往包含多個子任務(wù),只有
所有的子任務(wù)都順利完成,才可以任務(wù)業(yè)務(wù)處理成功
只要有任意一個子任務(wù)不能順利完成,此時認(rèn)為當(dāng)前業(yè)務(wù)
整體處理失敗
2.【特征】:一個業(yè)務(wù)中往往包含多個子任務(wù)
例子: 張三給李四轉(zhuǎn)賬3000元
1.確認(rèn)系統(tǒng)中存在"張三"用戶
2.確認(rèn)系統(tǒng)中存在"李四"用戶
3.確認(rèn)"張三"的余額大于等于3000
4.確認(rèn)"李四"的余額
5.實現(xiàn)"張三"的賬戶更新-3000
6.實現(xiàn)"李四"的賬戶更新+3000
3.【業(yè)務(wù)處理實現(xiàn)問題】:
1.開發(fā)工作量相對較大,如果每次進(jìn)行業(yè)務(wù)開發(fā)時,都需要從頭進(jìn)行開發(fā)
增加開發(fā)難度和開發(fā)工作量
2.不同的程序員對于同一個業(yè)務(wù)提出解決的方案往往不相同,導(dǎo)致在同一個
項目中可能對同一個業(yè)務(wù)出現(xiàn)多種不同處理方案,導(dǎo)致運行出錯
4【業(yè)務(wù)實現(xiàn)要求】:
1.一個業(yè)務(wù)在一個項目中只有一個解決方案
2.業(yè)務(wù)實現(xiàn)細(xì)節(jié)應(yīng)該封裝到一個方法中,進(jìn)行業(yè)務(wù)處理代碼復(fù)用
四。MVC開發(fā)規(guī)則介紹:
1.應(yīng)用于互聯(lián)網(wǎng)開發(fā)的一個規(guī)則.
2.這是一個應(yīng)用了數(shù)十年的開發(fā)規(guī)則。
五。MVC開發(fā)規(guī)則細(xì)節(jié):
1.指定了一次互聯(lián)網(wǎng)開發(fā)過程中,必須出現(xiàn)的角色有哪些
2.指定了一次互聯(lián)網(wǎng)開發(fā)過程中,必須出現(xiàn)的角色擔(dān)負(fù)職責(zé)
3.指定了一次互聯(lián)網(wǎng)開發(fā)過程中,必須出現(xiàn)的角色出場順序
六。一次互聯(lián)網(wǎng)開發(fā)過程中,必須出現(xiàn)的角色有哪些
1.C, controller object,控制層對象(Servlet對象)
2.M, model object, 業(yè)務(wù)模型層對象(Service對象)
3.V, view object, 視圖層對象(響應(yīng)對象/JSP)
七。一次互聯(lián)網(wǎng)開發(fā)過程中,必須出現(xiàn)的角色擔(dān)負(fù)職責(zé)
1.controller object,控制層對象(Servlet對象):最多只能做三件事
1)可以調(diào)用【請求對象】讀取請求包的信息
2)必須調(diào)用【業(yè)務(wù)模型層對象(Service對象)】來處理業(yè)務(wù)
3)必須調(diào)用【視圖層對象(響應(yīng)對象/JSP)】將業(yè)務(wù)處理結(jié)果寫入到響應(yīng)體
2.model object, 業(yè)務(wù)模型層對象(Service對象)
1)依次處理業(yè)務(wù)中子任務(wù),如果子任務(wù)涉及到對表文件操作,此時可以調(diào)用DAO來協(xié)助
2)根據(jù)子任務(wù)執(zhí)行情況,判斷業(yè)務(wù)是否處理成功
3)必須將【業(yè)務(wù)處理結(jié)果】返回給Controller對象
3.view object, 視圖層對象(響應(yīng)對象/JSP)
1)永遠(yuǎn)不負(fù)責(zé)對業(yè)務(wù)進(jìn)行處理
2)只能將【處理結(jié)果】寫入到響應(yīng)體
八。一次互聯(lián)網(wǎng)開發(fā)過程中,必須出現(xiàn)的角色出場順序
---->DeptDao
調(diào)用流程: 瀏覽器--------------->Servlet------->Service
----->EmpDao
響應(yīng)流程: DAO----->Service---->Servlet---->視圖對象---->響應(yīng)體---->瀏覽器