您好,登錄后才能下訂單哦!
在讀《Spring in Action》一書,讀到Spring數據訪問模板化的內容時,書中以乘坐飛機拖運行李為例,介紹了模板方法這一設計模式。
在乘坐飛機需要拖運行李時,我們需要需要進行行李登記。然后,將行李交給工作人員,工作人員會對行李進行稱重,安全掃描檢查,然后通過傳送帶將行李傳送到擺渡車。擺渡車載上行李,將行李拉到飛機。到達目的地后,擺渡車會將行李從飛機上拉到取行李處,然后乘客取走自己的行李。
查看整個過程,這個過程對于所有乘客基本都是相同的。對不同乘客不一樣的地方,是登記行李時需要各個乘客參與,稱重后繳費時需要乘客參與,到達目的地后取走行李時需要乘客參與。除此之外,整個過程無需乘客參與,是不變的部分。
把上述場景抽象一下,就是模板方法這一設計模式。模板方法設計模式定義過程的架構。整個過程中不變的部分在父類中定義,過程中需要改變的部分,交由各個子類來實現。這樣,對于具體業務邏輯來說,實現整個過程,只需要開發需要變化的部分,即各個子類的邏輯即可,而不用寫大量的固定不變的代碼。
在Spring訪問數據庫中的數據時,同樣適用模板方法。
我們使用JDBC來訪問數據庫的數據時,大致的處理過程為,打開一個連接,開始事務,執行SQL,獲取返回的數據,提交事務,關閉資源,異常處理等。在訪問各個數據時,打開連接,開始事務,提交事務,關閉資源,異常處理等過程都是不變的,沒有必要在每次訪問數據時都把上述邏輯寫一遍。每次訪問數據時,我們應該專注于執行的SQL以及獲取返回的數據。所以,可以使用模板方法這一設計模式,來優化這塊的代碼結構。
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對億速云的支持。如果你想了解更多相關內容請查看下面相關鏈接
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。