在项目中实现多数据源和读写分离的配置

一:第一种

 

1:在mybatis配置文件当中配置多个数据源

<context:component-scan base-package="com.zjl.ssm"><!-- base-package 如果多个,用“,”分隔 -->
        <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/><!-- 过滤其中这四个注解中的一个 -->
    </context:component-scan>

    <!-- 引入数据库配置文件 -->
    <bean id="propertyConfigurer"
          class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer">
        <property name="location" value="classpath:properties/jdbc.properties"/>
    </bean>

    <!--
    3307数据库==============================================================
    -->
    
    <!-- 配置数据库 -->
		<bean id="dataSource3307" class="com.alibaba.druid.pool.DruidDataSource" destroy-method="close">
            <property name="driverClassName" value="${jdbc.driver3307}"/>
            <property name="url" value="${jdbc.url3307}"/>
            <property name="username" value="${jdbc.username3307}"/>
            <property name="password" value="${jdbc.password3307}"/>
		</bean>
    
    <!-- 配置 MyBatis SqlSessionFactory -->
    <bean id="sqlSessionFactory3307" class="com.baomidou.mybatisplus.spring.MybatisSqlSessionFactoryBean">
        <!-- 指定 MyBatis 数据源 -->
        <property name="dataSource" ref="dataSource3307"/>
        <!-- 指定 MyBatis mapper 映射文件位置 -->
        <property name="mapperLocations" value="classpath:com/zjl/ssm/dao/db3307/mapper/*.xml"/>
        <!-- 指定 MyBatis 全局配置文件的位置 -->
        <property name="configLocation" value="classpath:mybatis-config.xml"/>
        <property name="plugins">
            <array>
                <!-- 分页插件配置 -->
                <bean id="paginationInterceptor" class="com.baomidou.mybatisplus.plugins.PaginationInterceptor">
                    <property name="dialectType" value="mysql"/>
                </bean>
            </array>
        </property>
        <property name="globalConfig" ref="globalConfig" />
    </bean>

    <!-- 扫描 MyBatis 的 dao 接口 -->
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <!--扫描所有 dao 接口,加入到 IOC 容器中 -->
        <property name="basePackage" value="com.zjl.ssm.dao.db3307"/>
        <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory3307"/>
    </bean>

    <!-- 定义事务 -->
    <bean id="transactionManager3307"
          class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <property name="dataSource" ref="dataSource3307"/>
    </bean>

    <!-- 使用注解定义事务 -->
    <tx:annotation-driven transaction-manager="transactionManager3307"/>

    <!--
   3308数据库==============================================================
   -->

    <!-- 配置数据库 -->
    <bean id="dataSource3308" class="com.alibaba.druid.pool.DruidDataSource" destroy-method="close">
        <property name="driverClassName" value="${jdbc.driver3308}"/>
        <property name="url" value="${jdbc.url3308}"/>
        <property name="username" value="${jdbc.username3308}"/>
        <property name="password" value="${jdbc.password3308}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值