`

springboot 多数据源

 
阅读更多
spring.datasource.test1.driverClassName = com.mysql.jdbc.Driver
spring.datasource.test1.url = jdbc:mysql://localhost:3306/test01?useUnicode=true&characterEncoding=utf-8
spring.datasource.test1.username = root
spring.datasource.test1.password = root

spring.datasource.test2.driverClassName = com.mysql.jdbc.Driver
spring.datasource.test2.url = jdbc:mysql://localhost:3306/test02?useUnicode=true&characterEncoding=utf-8
spring.datasource.test2.username = root
spring.datasource.test2.password = root

 

@Configuration//表示注入到spring容器中
@MapperScan(basePackages = "com.itmayiedu.test01", sqlSessionFactoryRef = "test1SqlSessionFactory")
public class Datasource1 {
	@Bean(name = "test1DataSource")
	@ConfigurationProperties(prefix = "spring.datasource.test1")
	@Primary
	public DataSource testDataSource() {
		return DataSourceBuilder.create().build();
	}
	@Bean(name = "test1SqlSessionFactory")
	@Primary
	public SqlSessionFactory testSqlSessionFactory(@Qualifier("test1DataSource") DataSource dataSource) throws Exception {
		SqlSessionFactoryBean bean = new SqlSessionFactoryBean();
		bean.setDataSource(dataSource);
		//bean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath:mybatis/mapper/test1/*.xml"));
		return bean.getObject();
	}

	@Bean(name = "test1TransactionManager")
	@Primary
	public DataSourceTransactionManager testTransactionManager(@Qualifier("test1DataSource") DataSource dataSource) {
		return new DataSourceTransactionManager(dataSource);
	}

	@Bean(name = "test1SqlSessionTemplate")
	public SqlSessionTemplate testSqlSessionTemplate(@Qualifier("test1SqlSessionFactory") SqlSessionFactory sqlSessionFactory) throws Exception {
		return new SqlSessionTemplate(sqlSessionFactory);
	}
}

 

@Configuration
@MapperScan(basePackages = "com.itmayiedu.test02", sqlSessionFactoryRef = "test2SqlSessionFactory")
public class Datasource2 {
	@Bean(name = "test2DataSource")
	@ConfigurationProperties(prefix = "spring.datasource.test2")
	public DataSource testDataSource() {
		return DataSourceBuilder.create().build();
	}

	@Bean(name = "test2SqlSessionFactory")
	public SqlSessionFactory testSqlSessionFactory(@Qualifier("test2DataSource") DataSource dataSource) throws Exception {
		SqlSessionFactoryBean bean = new SqlSessionFactoryBean();
		bean.setDataSource(dataSource);
		//bean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath:mybatis/mapper/test2/*.xml"));
		return bean.getObject();
	}

	@Bean(name = "test2TransactionManager")
	public DataSourceTransactionManager testTransactionManager(@Qualifier("test2DataSource") DataSource dataSource) {
		return new DataSourceTransactionManager(dataSource);
	}

	@Bean(name = "test2SqlSessionTemplate")
	public SqlSessionTemplate testSqlSessionTemplate(@Qualifier("test2SqlSessionFactory") SqlSessionFactory sqlSessionFactory) throws Exception {
		return new SqlSessionTemplate(sqlSessionFactory);
	}
}

 

分享到:
评论

相关推荐

    SpringBoot多数据源案例

    在SpringBoot应用中,多数据源的配置是一个常见的需求,特别是在大型系统中,可能需要连接多个不同的数据库,例如,一个用于存储用户数据,另一个用于存储日志或交易数据。本案例提供了一个简单的SpringBoot项目,...

    SpringBoot多数据源成果源代码.rar

    本项目名为"SpringBoot多数据源成果源代码",提供了一个实际的实现案例,通过动态数据源(dynamic-datasource)来管理多个数据源。 1. **Spring Boot**:Spring Boot是Spring框架的一个扩展,简化了Spring应用的...

    SpringBoot 多数据源

    本文将深入探讨SpringBoot如何实现多数据源以及MySQL的分库分表策略。 首先,我们要理解“多数据源”是什么。在SpringBoot中,多数据源意味着应用可以同时连接和操作多个不同的数据库。这在分布式系统、读写分离、...

    SpringBoot多数据源切换.zip

    SpringBoot多数据源切换.zip

    springboot多数据源即分布式事务解决方案

    SpringBoot作为一款轻量级的框架,提供了便捷的多数据源配置和分布式事务管理方案,使得开发者能够高效地管理和操作不同的数据库。本文将详细探讨SpringBoot如何实现多数据源以及分布式事务。 首先,我们要理解什么...

    springboot多数据源即分布式事务解决方案,添加对多线程的支持

    本教程将深入探讨如何在Spring Boot环境下实现多数据源操作及分布式事务管理,并加入对多线程的支持。 首先,我们来理解多数据源的概念。在大型系统中,往往需要连接多个数据库,如主库、从库、测试库等。Spring ...

    基于 SpringBoot 多数据源 动态数据源 主从分离 快速启动器 支持分布式事务

    基于 SpringBoot 多数据源 动态数据源 主从分离 快速启动器 支持分布式事务。一个基于springboot的快速集成多数据源的启动器。支持 数据源分组 ,适用于多种场景 纯粹多库 读写分离 一主多从 混合模式。支持数据库...

    springboot多数据源代码

    本项目涉及的主题是“springboot多数据源代码”,这意味着我们将探讨如何在SpringBoot应用中配置和管理多个数据源,包括Hive和MySQL数据库。 Hive是一个基于Hadoop的数据仓库工具,可以将结构化的数据文件映射为...

    springboot多数据源,DruidDataSource多数据源切换,不重启项目,修改数据库名解决方案

    项目背景: 1. Springboot项目 ... 一个主数据源,数据名称库不变。 3. 一个副数据源,数据库名称每天都在变,比如今天1号,是db_01; 明天2号,是db_02。 4.不重启项目切换数据源。 5.项目介绍: ...

    springboot多数据源注册与切换

    Spring Boot以其便捷的配置和开箱即用的功能深受开发者喜爱,而"springboot多数据源注册与切换"则是应对复杂数据库环境的一个核心特性。本文将深入探讨如何在Spring Boot应用中实现多数据源的注册、切换以及相关的切...

    SpringBoot配置多数据源实现动态切换数据源

    本文将深入探讨如何在SpringBoot项目中配置多数据源,并实现数据源的动态切换,帮助你理解和掌握这一核心技能。 首先,我们理解"多数据源"的概念。在SpringBoot应用中,多数据源意味着系统能够连接并操作多个不同的...

    SpringBoot多数据源框架【整合配置及应用】.docx

    SpringBoot 多数据源框架整合配置及应用 SpringBoot 微服务框架整合配置及应用中,多数据源依赖是指在同一个应用程序中使用多个数据源,以满足不同的业务需求。在本文中,我们将介绍如何在 SpringBoot 中使用多数据...

    springboot多数据源整合sqlserver

    在Spring Boot应用中,多数据源的整合是一个常见的需求,特别是在大型系统中,可能需要连接到不同的数据库以实现数据隔离或者充分利用不同数据库的优势。本项目是关于如何在Spring Boot环境中整合三个数据源,其中两...

    springboot多数据源切换mysql+sql server事例

    本示例“springboot多数据源切换mysql+sql server”是关于如何在Spring Boot项目中配置和使用多个数据库的数据源切换。下面将详细阐述这个主题的知识点。 首先,**多数据源**是指在一个应用中同时连接并操作多个...

    springboot多数据源配置

    "Springboot多数据源配置"是Spring Boot应用中一个重要的实践场景,它允许开发者在同一个项目中管理多个不同的数据库,例如主数据库和从数据库,或者用于不同业务逻辑的数据源。这种配置在大数据、分布式系统和...

    SpringBoot多数据源+mybatis+swagger2.rar

    SpringBoot多数据源+Mybatis+Swagger2是一个常见的企业级应用开发组合,它结合了Spring Boot的便捷性、Mybatis的灵活性以及Swagger2的API文档管理能力,为开发者提供了高效且易于维护的后端架构。下面我们将深入探讨...

    SpringBoot多数据源项目

    本项目主题为“SpringBoot多数据源项目”,这涉及到在同一个应用中管理多个数据库源,以便实现不同的业务逻辑或数据隔离。下面我们将深入探讨相关的知识点。 首先,SpringBoot简化了Spring框架的初始化和配置过程,...

    springboot多数据源案列,Java多数据源

    springboot多数据源案列,Java多数据源,springboot配置多数据源案列

    springBoot 多数据源

    springBoot集成多数据源(mysql+oracle) 使用durid线程池+maven打包配置置+logback+多线程任务。可配置generatorConfig 自动 生成实体,支持跨数据库事务

    SpringBoot多数据源连接,Druid监控双数据源 Demo

    自己临时搭建的SpringBoot多数据源连接报表,同时连接Mysql,Oracle数据库Mybatis连接,Druid监控双数据源,Quart执行定时任务,PageHelper分页,前端延用Layui

Global site tag (gtag.js) - Google Analytics