日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring+Mybatis多数据源配置

發布時間:2024/1/17 javascript 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring+Mybatis多数据源配置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、配置文件

properties

ds1.driverClassName=com.mysql.jdbc.Driver ds1.url=jdbc:mysql://192.168.200.130:3306/test1?useUnicode=true&characterEncoding=UTF-8 ds1.username=hhh ds1.password=123456 ds2.driverClassName=oracle.jdbc.OracleDriver ds2.url=jdbc:mysql://localhost:3306/test2?useUnicode=true&characterEncoding=UTF-8 ds2.username=qqq ds2.password=123456

xml

   <bean id="dataSource" class="com.hhhqqq.datasource.DynamicDataSource"> <property name="targetDataSources"> <map key-type="java.lang.String"> <entry key="ds1" value-ref="ds1" /> <entry key="ds2" value-ref="ds2" /> </map> </property> <property name="defaultTargetDataSource" ref="ds1" /> </bean> <bean id="ds1" class="com.alibaba.druid.pool.DruidDataSource" destroy-method="close"> <property name="driverClassName" value="${ds1.driverClassName}" /> <property name="url" value="${ds1.url}" /> <property name="username" value="${ds1.username}" /> <property name="password" value="${ds1.password}" /> </bean>
<bean id="ds2" class="com.alibaba.druid.pool.DruidDataSource" destroy-method="close"> <property name="driverClassName" value="${ds2.driverClassName}" /> <property name="url" value="${ds2.url}" /> <property name="username" value="${ds2.username}" /> <property name="password" value="${ds2.password}" /> </bean>

二、Java文件

com.hhhqqq.datasource.DynamicDataSource源碼

import java.util.logging.Logger; import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource;
public class DynamicDataSource extends AbstractRoutingDataSource {/** * 取得當前使用那個數據源。 */ @Override protected Object determineCurrentLookupKey() { return DataSourceContextHolder.getDbType(); } public Logger getParentLogger() { // TODO Auto-generated method stub return null; } }

DataSourceContextHolder源碼

public class DataSourceContextHolder {private static final ThreadLocal<String> contextHolder = new ThreadLocal<String>(); /** * 設置當前數據庫。 * @param dbType */ public static void setDbType(String dbType) { contextHolder.set(dbType); } /** * 取得當前數據源。 * @return */ public static String getDbType() { String str = (String) contextHolder.get(); return str; } /** * 清除上下文數據 */ public static void clearDbType() { contextHolder.remove(); } }

三、注意點

Spring單數據源直接在<bean id="dataSource">下配置數據源的各種連接參數。但動態數據源需要配置個各個數據源例如ds1、ds2等。然后在dataSource中動態根據傳遞過來的參數動態調用不同的數據源。
1、當進行訪問時,首先通過DataSourceContextHolder.setDbType("ds1");設置需要使用的數據源。DataSourceContextHolder就是一個用來存儲數據源信息的類,其中通過ThreadLocal來記錄數據源信息。
2、DynamicDataSource類集成Spring的AbstractRoutingDataSource類,通過determineCurrentLookupKey方法來獲取數據源類型,如果沒有對應的數據源則使用defaultTargetDataSource配置。
3、當設置了數據源之后會一直使用該數據源進行連接,除非使用 DataSourceContextHolder.setDbType重新設置數據源或使用DataSourceContextHolder.clearDbType()清除,清除后使用defaultTargetDataSource進行連接。(這點很重要)

轉載自:https://my.oschina.net/qweasfzxc880/blog/621113?p={{page}}

?

轉載于:https://www.cnblogs.com/aaron-shu/p/5985659.html

總結

以上是生活随笔為你收集整理的Spring+Mybatis多数据源配置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 成人免费在线视频网站 | 午夜亚洲aⅴ无码高潮片苍井空 | 91av一区二区三区 | 国产一级免费在线观看 | 亚洲码欧美码一区二区三区 | 亚洲毛片在线播放 | 伦理片波多野结衣 | 日韩欧美综合在线 | 美女屁股眼视频网站 | 欧美激情影音先锋 | 久久精品国产99精品国产亚洲性色 | 色多多在线观看 | 18在线观看免费入口 | 精品一区二区三区免费观看 | 综合网色 | 打屁股疼的撕心裂肺的视频 | 国产无码精品久久久 | 老熟女高潮一区二区三区 | 成人久久精品人妻一区二区三区 | 亚洲国产高清国产精品 | 丰满白嫩尤物一区二区 | 日本爽爽爽 | 狂躁美女大bbbbbb黑人 | 美女草逼视频 | 亚洲少妇30p | www四虎com| 亚洲精品免费在线观看视频 | 草草网址| 色噜噜狠狠成人中文 | 国产精品操 | 国产精品视频在线观看 | 九九少妇 | 国产老头老太作爱视频 | 狠狠操在线播放 | 国产三级在线观看 | 成人福利在线免费观看 | 中文字幕23页 | 亚洲黄色av | av大片在线看| 亚洲精品综合 | 亚洲视频在线观看网址 | 日本深夜福利 | 四虎精品一区二区三区 | 国产呦系列 | 国产精品久久久久久久久免费 | 九色视频偷拍少妇的秘密 | 福利一区二区 | 在线观看欧美精品 | 青青草免费公开视频 | 久91 | 波多野结衣中文字幕在线播放 | 中国av在线 | 日日夜夜操操操 | 日韩二区在线 | 色欲欲www成人网站 老色鬼av | jizz视频 | 麻豆视频在线播放 | 久久久久国产精 | 大波大乳videos巨大 | 成人合集| 成人免费黄色网址 | 韩国久久久 | 日韩一二三区视频 | 台湾佬美性中文娱乐 | 亚洲一区二区国产精品 | 女同爱爱视频 | 国产一级片子 | 美女隐私无遮挡网站 | 国产日韩中文 | 国产在线免费 | 涩涩999| 精品香蕉99久久久久网站 | 操干网| 精品国产96亚洲一区二区三区 | 日批视频网站 | 不卡精品视频 | av在线播放一区二区三区 | 精品无码一区二区三区 | 在线观看日韩精品 | 久久人妻无码aⅴ毛片a片app | 日韩理论片在线观看 | av55 | 免费高清av在线看 | 成人黄网免费观看视频 | 日韩免费一区二区 | 毛片网站视频 | 日韩视频在线观看 | 欧美日本日韩 | 女大学生的家政保姆初体验 | 亚洲乱码一区二区三区在线观看 | 亚洲精品一区二区三区四区乱码 | 992tv在线影院 | 国产女人18水真多18精品一级做 | 国产又粗又猛又黄又爽无遮挡 | 欧美成人精品一区二区免费看片 | 男人操女人免费视频 | 日本黄图 | 性久久久久久久久久久 | 欧美少妇一区 | 把高贵美妇调教成玩物 |