207. 多數據源 ssm項目

參考博客:java

               https://blog.csdn.net/a15020059230/article/details/76677322mysql

 

1.效果

  一個項目同時鏈接多個數據源git

2. 過程

    2.1 搭建單數據源ssm項目

    https://my.oschina.net/springMVCAndspring/blog/1817609spring

成功的效果sql

   2.2 改造單數據源

     

   

2.2.1 工具類(源碼附件下載)

 

2.2.2   多數據源 配置

 

    <!--  2.管理數據源-->
        <!-- 數據源1  -->
        <bean id="db1" class="com.alibaba.druid.pool.DruidDataSource">
                <property name="driverClassName" value="${jdbc1.driver}"></property>
                <property name="url" value="${jdbc1.url}"></property>
                <property name="username" value="${jdbc1.username}"></property>
                <property name="password" value="${jdbc1.password}"></property>
        </bean>
        <!-- 數據源2  -->
        <bean id="db2" class="com.alibaba.druid.pool.DruidDataSource">
                <property name="driverClassName" value="${jdbc2.driver}"></property>
                <property name="url" value="${jdbc2.url}"></property>
                <property name="username" value="${jdbc2.username}"></property>
                <property name="password" value="${jdbc2.password}"></property>
        </bean>
        <!-- dataSource -->
            <bean id="dataSource" class="cn.datasource.ssm.utils.DynamicDataSource">  
             <property name="targetDataSources">  
                 <map key-type="java.lang.String">
                     <!-- 指定lookupKey和與之對應的數據源 -->
                     <entry key="db1" value-ref="db1"></entry>  
                     <entry key="db2" value-ref="db2"></entry>  
                 </map>  
             </property>
             <property name="defaultTargetDataSource" ref="db1" /> <!-- 默認數據源  -->
           </bean>

2.2.3 數據庫資源文件

 

jdbc1.driver=com.mysql.jdbc.Driver
jdbc1.url=jdbc:mysql://localhost:3306/manydata1?characterEncoding=utf-8
jdbc1.username=root
jdbc1.password=root數據庫

jdbc2.driver=com.mysql.jdbc.Driver
jdbc2.url=jdbc:mysql://192.168.0.125:3306/manydatasource2?characterEncoding=utf-8
jdbc2.username=root
jdbc2.password=root
 工具

 

3. 使用教程

3.1 在 業務層的實現類中 的方法中指定數據源

DynamicDataSourceHolder.setDataSource("db2");//指定數據源  不指定 按照默認數據源處理ui

3.2 若是不指定 按照默認

4. 附(源碼)

   百度雲:url

連接:https://pan.baidu.com/s/1uL-YF0Zp03xA1B5Xw_oibQ 
提取碼:f74e 
  碼雲:spa

https://gitee.com/Luck_Me/multidata_source_ssmproject/tree/master

相關文章
相關標籤/搜索