mybatis之日誌源碼解析

mybatis日誌這塊運用的設計模式有點像slf4j類似一樣,運用了構造器、適配器和外觀者設計模式。應用嘗試加載各個日誌框架類來封裝成內部自己設計的Log接口。這整個過程比較簡單,大概流程如下:

mybatis封裝日誌
源碼實現流程
第一步,通過org.apache.ibatis.logging.LogFactory類初始化嘗試加載各個框架日誌類。
加載日誌框架文件
第二步、不同框架具體加載使用不同的加載方式,但實現同一mybatis自定義接口Log
封裝不同接口
第三步,通過構造器模式,創建日誌實例
在這裏插入圖片描述
在這裏插入圖片描述
到此,整個myabtsi日誌源碼就分析完了。它應用的設計思想,確實很精妙。通過LogFactory去嘗試加載各大日誌框架,再統一封裝成自定義的Log接口。客戶端毫無感知這一切的過程。並且日誌的切換很靈活。其實,我們可以吧這種思想應用到我們實際項目中, 比如redis客戶端的封裝(單機、分片、集羣模式)通過統一操作返回。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章