最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

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

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

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

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

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

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

核心路由方法:

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

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

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

調(diào)用入口:

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java通過Socket實(shí)現(xiàn)簡(jiǎn)單多人聊天室

    Java通過Socket實(shí)現(xiàn)簡(jiǎn)單多人聊天室

    這篇文章主要為大家詳細(xì)介紹了Java通過Socket實(shí)現(xiàn)簡(jiǎn)單多人聊天室,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • Java獲取漢字對(duì)應(yīng)的拼音(全拼或首字母)

    Java獲取漢字對(duì)應(yīng)的拼音(全拼或首字母)

    這篇文章主要介紹了Java如何獲取漢字對(duì)應(yīng)的拼音(全拼或首字母),文中實(shí)現(xiàn)的方法是引用了pinyin4j-2.5.0.jar,然后給出了完整的示例代碼,有需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-01-01
  • Java時(shí)間輪調(diào)度算法的代碼實(shí)現(xiàn)

    Java時(shí)間輪調(diào)度算法的代碼實(shí)現(xiàn)

    時(shí)間輪是一種高效的定時(shí)調(diào)度算法,主要用于管理延時(shí)任務(wù)或周期性任務(wù),它通過一個(gè)環(huán)形數(shù)組(時(shí)間輪)和指針來實(shí)現(xiàn),將大量定時(shí)任務(wù)分?jǐn)偟焦潭ǖ臅r(shí)間槽中,極大地降低了時(shí)間復(fù)雜度和資源開銷,本文給大家介紹了Java時(shí)間輪調(diào)度算法的代碼實(shí)現(xiàn),需要的朋友可以參考下
    2025-03-03
  • Java中double精度丟失問題原因及解決辦法

    Java中double精度丟失問題原因及解決辦法

    使用Java double進(jìn)行運(yùn)算時(shí),經(jīng)常出現(xiàn)精度丟失的問題,總是在一個(gè)正確的結(jié)果左右偏0.0000**1,這篇文章主要給大家介紹了關(guān)于Java中double精度丟失問題原因及解決辦法,需要的朋友可以參考下
    2024-01-01
  • ssm開發(fā)使用redis作為緩存的使用步驟

    ssm開發(fā)使用redis作為緩存的使用步驟

    在開發(fā)中經(jīng)常遇到大量的重復(fù)的,高并發(fā)的查詢,此時(shí)可以使用redis緩存。這篇文章主要介紹了ssm開發(fā)使用redis作為緩存的使用步驟,感興趣的小伙伴們可以參考一下
    2018-11-11
  • java 中的亂碼問題匯總及解決方案

    java 中的亂碼問題匯總及解決方案

    這篇文章主要介紹了java 中的亂碼問題匯總相關(guān)資料,并附解決方案,出現(xiàn)亂碼問題有編碼與解碼,字節(jié)流與字符流出現(xiàn)亂碼,等其他情況,需要的朋友可以參考下
    2016-11-11
  • Spring的UnsatisfiedDependencyException異常的解決

    Spring的UnsatisfiedDependencyException異常的解決

    在使用Spring框架開發(fā)應(yīng)用程序時(shí),我們經(jīng)常會(huì)遇到各種異常,本文主要介紹了Spring的UnsatisfiedDependencyException異常的解決,感興趣的可以了解一下
    2023-11-11
  • 簡(jiǎn)單了解Java編程中拋出異常的方法

    簡(jiǎn)單了解Java編程中拋出異常的方法

    這篇文章主要介紹了Java編程中拋出異常的方法,是Java入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-11-11
  • SpringBoot整合Jackson超詳細(xì)用法(附Jackson工具類)

    SpringBoot整合Jackson超詳細(xì)用法(附Jackson工具類)

    這篇文章主要介紹了SpringBoot整合Jackson超詳細(xì)教程,本篇講的是Jackson的詳細(xì)用法,Jackson工具類在文章最后,直接復(fù)制粘貼即可使用,需要的朋友可以參考下
    2023-03-03
  • Java多線程 線程狀態(tài)原理詳解

    Java多線程 線程狀態(tài)原理詳解

    這篇文章主要介紹了Java多線程 線程狀態(tài)原理詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02

最新評(píng)論

沅陵县| 尚义县| 东辽县| 保定市| 河南省| 达拉特旗| 灵石县| 正蓝旗| 盖州市| 石柱| 青浦区| 河西区| 临高县| 遵义市| 栖霞市| 满城县| 云阳县| 梨树县| 汉源县| 肇州县| 历史| 林周县| 三明市| 铜川市| 连州市| 会昌县| 东海县| 台北县| 新兴县| 昭苏县| 南昌市| 横山县| 夏邑县| 阿坝| 东明县| 油尖旺区| 长沙市| 铜川市| 喀什市| 嘉义县| 金乡县|