1.儲存過程是基於計算密集型的業務邏輯。如果是基於操作密集型的就不要用儲存過程了
2.所有資料訪問在應用層封裝為資料訪問層,在那裡,如果sql簡單的話,直接用sql;如果sql複雜,或者資料互動多且中間資料最後不會用到,使用儲存過程
業務邏輯層:
優點:功能分層明確,便於在業務邏輯層集中處理業務邏輯,便於業務邏輯的變更與擴充套件,
缺點:可能要大量的占用與資料庫的連線數,可能有大量的io流量,僅僅是為了對取出來的資料進行判斷,
儲存過程
優點與缺點正好與業務邏輯層相反
根據實際情況,應避免多連線和大io,對相對固定的業務邏輯應採用儲存過程,而多變的,將來可能要變化的業務邏輯放在業務邏輯層處理。
儲存過程最好不要有if之類的東西出現,儲存過程相對複雜的只是顯示,統計之類的操作,如果有資料操作還是由業務層控制比較好
對資料操作複雜,如很多表,很多迴圈,用儲存過程
簡單的就直接用sql
實戰 業務邏輯層
負責處理系統的核心業務,負責對使用者定義的流程進行建模,負責資料訪問層和展示層的通訊,不能因為資料庫的變換而變化,也不能因為終端的變換而變化。bll 業務邏輯 業務邏輯的操作,包括業務處理,呼叫資料訪問,事務等。ibll 業務介面 業務邏輯層的方法對外暴露的介面和服務契約 wfactivitys 工...
spring事務配置是在業務邏輯層還是dao層?
spring事務配置是在業務邏輯層還是dao層?業務邏輯層和dao層都可以配置事務處理,如果乙個service呼叫多個dao,它們如果是乙個事務,那麼事務應該配置業務邏輯層,否則配置在dao層就可以了。配置到dao層 propagation required propagation required...
三層業務邏輯
1.確定需求 2.根據需求確定sql 3.編寫資料訪問層類,dal 4.編寫業務層 bll 5.編寫表現層 ui 三層結構常用類庫 dal 資料訪問類 bll 業務類 ui 表現層 視窗,多窗體傳值的靜態類gloabhelper model 實體類 資料例項物件 utility 實用類 comman...