欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Spring數(shù)據(jù)庫多數(shù)據(jù)源路由配置過程圖解

 更新時間:2020年06月30日 10:11:49   作者:青蔥歲月  
這篇文章主要介紹了Spring數(shù)據(jù)庫多數(shù)據(jù)源路由配置過程圖解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

項目中需要根據(jù)不同業(yè)務進行分庫,首先是將業(yè)務不同業(yè)務映射到不同過的數(shù)據(jù)庫( biz --> db,可能存在多對一情況),

查看springjdbc源碼發(fā)現(xiàn)AbstractRoutingDataSource類作為一個數(shù)據(jù)源路由抽象類,可以擔當這個事情,其設計思想也比較簡單,

首先將多個數(shù)據(jù)源的映射關(guān)系自己維護完成后注入進來,然后自己定義一個路由規(guī)則,重點部分見代碼:

首先可以看到該類是一個抽象類,重點關(guān)注變量targetDataSource和resolvedDataSources.

其中targetDataSource用于將用戶建立的映射關(guān)系注入進來,可以通過如下方法

resolvedDataSources用于真正存儲依賴關(guān)系,targetDataSource僅僅是個中介,解析代碼見下圖

核心路由方法:

是不是很清楚,首先獲取數(shù)據(jù)源映射key,然后通過key獲取數(shù)據(jù)源

數(shù)據(jù)源映射獲取方法為抽象方法,見下圖:

實現(xiàn)時需要注意線程安全,最佳實現(xiàn)時通過ThreadLocal將在dbsql執(zhí)行前將key設置進去,以便后來獲取這個key,

調(diào)用入口:

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 使用Spirng Boot Admin監(jiān)控Spring Cloud應用項目

    使用Spirng Boot Admin監(jiān)控Spring Cloud應用項目

    這篇文章主要介紹了使用Spirng Boot Admin監(jiān)控Spring Cloud應用項目,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • java、python、JavaScript以及jquery循環(huán)語句的區(qū)別

    java、python、JavaScript以及jquery循環(huán)語句的區(qū)別

    本篇文章主要介紹java、python、JavaScript以及jquery的循環(huán)語句的區(qū)別,這里整理了它們循環(huán)語句語法跟示例,以便大家閱讀,更好的區(qū)分它們的不同
    2016-07-07
  • Java Scanner類及其方法使用圖解

    Java Scanner類及其方法使用圖解

    這篇文章主要介紹了Java Scanner類及其方法使用圖解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-05-05
  • Java異常跟蹤棧定義與用法示例

    Java異常跟蹤棧定義與用法示例

    這篇文章主要介紹了Java異常跟蹤棧定義與用法,結(jié)合具體實例形式分析了異常處理棧的概念、原理及相關(guān)使用技巧,需要的朋友可以參考下
    2018-05-05
  • Spring實戰(zhàn)之ServletContextResource訪問資源文件示例

    Spring實戰(zhàn)之ServletContextResource訪問資源文件示例

    這篇文章主要介紹了Spring實戰(zhàn)之ServletContextResource訪問資源文件,結(jié)合實例形式分析了spring使用ServletContextResource讀取與遍歷資源文件相關(guān)操作技巧,需要的朋友可以參考下
    2019-12-12
  • Java聊天室之實現(xiàn)使用Socket傳遞音頻

    Java聊天室之實現(xiàn)使用Socket傳遞音頻

    這篇文章主要為大家詳細介紹了Java簡易聊天室之使用Socket實現(xiàn)傳遞音頻功能,文中的示例代碼講解詳細,具有一定的借鑒價值,需要的可以了解一下
    2022-10-10
  • Springboot調(diào)整接口響應返回時長詳解(解決響應超時問題)

    Springboot調(diào)整接口響應返回時長詳解(解決響應超時問題)

    當后端對于數(shù)據(jù)量較大的處理或是某些耗時的操作時,需要先對請求接口的請求進行響應,下面這篇文章主要給大家介紹了關(guān)于Springboot調(diào)整接口響應返回時長(解決響應超時問題)的相關(guān)資料,需要的朋友可以參考下
    2023-01-01
  • Java實現(xiàn)聊天機器人

    Java實現(xiàn)聊天機器人

    這篇文章主要為大家詳細介紹了Java簡單實現(xiàn)聊天機器人,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • SpringMVC核心DispatcherServlet處理流程分步詳解

    SpringMVC核心DispatcherServlet處理流程分步詳解

    這篇文章主要介紹了SpringMVC核心之中央調(diào)度器DispatcherServlet的相關(guān)知識,包括SpringMVC請求處理過程及SrpingMVC容器和spring IOC容器關(guān)系,需要的朋友可以參考下
    2023-04-04
  • 解決Springboot獲取不到nacos配置中心的配置問題

    解決Springboot獲取不到nacos配置中心的配置問題

    由于項目使用的nacos老版本,存在風險bug, 需要將nacos升級至2.2.1及以上版本,版本升級完畢之后 啟動項目發(fā)現(xiàn)項目開始報錯,所以本文記錄一下Springboot獲取不到nacos配置中心的配置問題,文中有詳細的解決方法,需要的朋友可以參考下
    2023-09-09

最新評論