這幾天在學習springboot+mybatis框架,對於上面的幾個文件夾中應該存放什麼類,這些類有什麼功能,還是有些迷糊。通過網上資料現在大致已經瞭解了。記下來以後有了新的理解再加上去
首先來說一下業務邏輯:
Controller-->service接口-->serviceImpl-->dao接口-->daoImpl-->mapper-->db
一:Dao(Data Access Object):數據存儲對象
不管是什麼框架,我們很多時候都會與數據庫進行交互。如果遇到一個場景我們都要去寫SQL語句,那麼我們的代碼就會很冗餘。所以,我們就想到了把數據庫封裝一下,讓我們的數據庫的交道看起來像和一個對象打交道,這個對象通常就是DAO。當我們操作這個對象的時候,這個對象會自動產生SQL語句來和數據庫進行交互,我們就只需要使用DAO就行了。
通常我們在DAO層裏面寫接口,裏面有與數據打交道的方法。SQL語句通常寫在mapper文件裏面的。
二:Service:服務
服務是一個相對獨立的功能模塊,主要負責業務邏輯應用設計。首先也要設計接口,然後再設計其實現該接口的類。這樣我們就可以在應用中調用service接口進行業務處理。service層業務實現,具體調用到已經定義的DAO的接口,封裝service層的業務邏輯有利於通用的業務邏輯的獨立性和重複利用性 。
三:Controller:控制器
主要負責具體業務模塊流程的控制,會調用Service層的接口來控制業務邏輯
四:model:模型
模型通常認爲是視圖(view)的內核,模型就是指視圖的數據