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

spring多數(shù)據(jù)源配置實現(xiàn)方法實例分析

 更新時間:2019年12月19日 11:53:30   作者:自由港  
這篇文章主要介紹了spring多數(shù)據(jù)源配置實現(xiàn)方法,結合實例形式分析了spring多數(shù)據(jù)源配置相關操作技巧與使用注意事項,需要的朋友可以參考下

本文實例講述了spring多數(shù)據(jù)源配置實現(xiàn)方法。分享給大家供大家參考,具體如下:

在網上找到的配置多數(shù)據(jù)源的方法。

1.擴展 org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource

實現(xiàn)代碼

import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource;
public class DynamicDataSource extends AbstractRoutingDataSource {
  @Override
  protected Object determineCurrentLookupKey() {
    // TODO Auto-generated method stub
    return DbContextHolder.getDbType();
  }
}

2.實現(xiàn)一個線程安全的DbContextHolder類。

public class DbContextHolder {
    private static final ThreadLocal contextHolder = new ThreadLocal();
    public static void setDbType(String dbType)
    {
      contextHolder.set(dbType);
    }
    /**
     * 取得dbtype類型
     * @return
     */
    public static String getDbType()
    {
      String str=(String) contextHolder.get();
      if(null==str || "".equals(str))
        str="1";
      return str;
    }
    public static void clearDbType()
    {
      contextHolder.remove();
    }
}

3.修改spring的配置文件。

<!--動態(tài)選擇數(shù)據(jù)源-->
  <bean id="dataSource" class="tecamo.core.utils.DynamicDataSource">
    <property name="targetDataSources">
      <map key-type="java.lang.String">
        <entry key="1" value-ref="ds1"/>
        <entry key="2" value-ref="ds2"/>
      </map>
    </property>
    <property name="defaultTargetDataSource" ref="ds1"/>
  </bean>
  <!-- 數(shù)據(jù)源定義 -->
  <bean id="ds1" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
    <property name="driverClassName" value="${jdbc.driverClassName}"/>
    <property name="url" value="${jdbc.url}"/>
    <property name="username" value="${jdbc.username}"/>
    <property name="password" value="${jdbc.password}"/>
  </bean>
  <bean id="ds2" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
    <property name="driverClassName" value="${jdbcOrcale.driverClassName}"/>
    <property name="url" value="${jdbcOrcale.url}"/>
    <property name="username" value="${jdbcOrcale.username}"/>
    <property name="password" value="${jdbcOrcale.password}"/>
  </bean>

4.切換數(shù)據(jù)源方法。

在serverice方法之前調用

DbContextHolder.setDbType("2");表示使用第二個數(shù)據(jù)源。

更多關于java相關內容感興趣的讀者可查看本站專題:《Spring框架入門與進階教程》、《Java數(shù)據(jù)結構與算法教程》、《Java操作DOM節(jié)點技巧總結》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總

希望本文所述對大家java程序設計有所幫助。

相關文章

  • SpringBoot解析yml全流程詳解

    SpringBoot解析yml全流程詳解

    本文主要介紹了SpringBoot解析yml全流程詳解,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Java實現(xiàn)鼠標模擬與鍵盤映射

    Java實現(xiàn)鼠標模擬與鍵盤映射

    這篇文章主要為大家詳細介紹了Java實現(xiàn)鼠標模擬與鍵盤映射,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • SpringCloud Zuul基本使用方法匯總

    SpringCloud Zuul基本使用方法匯總

    這篇文章主要介紹了SpringCloud Zuul基本使用方法匯總,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-09-09
  • java開發(fā)實現(xiàn)五子棋游戲

    java開發(fā)實現(xiàn)五子棋游戲

    這篇文章主要為大家詳細介紹了java開發(fā)實現(xiàn)五子棋游戲,具有雙人對戰(zhàn)和人機對戰(zhàn)功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • 基于Java的電梯系統(tǒng)實現(xiàn)過程

    基于Java的電梯系統(tǒng)實現(xiàn)過程

    這篇文章主要介紹了基于Java的電梯系統(tǒng)實現(xiàn)過程,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-10-10
  • Java中構造函數(shù),set/get方法和toString方法使用及注意說明

    Java中構造函數(shù),set/get方法和toString方法使用及注意說明

    這篇文章主要介紹了Java中構造函數(shù),set/get方法和toString方法的使用及注意說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • Java如何實現(xiàn)樹的同構?

    Java如何實現(xiàn)樹的同構?

    今天給大家?guī)淼氖顷P于Java的相關知識,文章圍繞著Java如何實現(xiàn)樹的同構展開,文中有非常詳細的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • java實現(xiàn)會反彈的小球示例

    java實現(xiàn)會反彈的小球示例

    這篇文章主要介紹了java實現(xiàn)會反彈的小球示例,需要的朋友可以參考下
    2014-04-04
  • JPA @Query時,無法使用limit函數(shù)的問題及解決

    JPA @Query時,無法使用limit函數(shù)的問題及解決

    這篇文章主要介紹了JPA @Query時,無法使用limit函數(shù)的問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • Java利用反射如何查找使用指定注解的類詳解

    Java利用反射如何查找使用指定注解的類詳解

    這篇文章主要給大家介紹了關于Java利用反射如何查找使用指定注解的類的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
    2017-09-09

最新評論