`

java 设置多个数据源

 
阅读更多
获取配置的数据源
for(IDataSourceCfgVO sourceCfgVO:allDataSourceList){
			if(!dataSourceMap.containsKey(sourceCfgVO.getCfgCode())){
				/*
				DriverManagerDataSource dataSource = new DriverManagerDataSource();
				dataSource.setDriverClassName(sourceCfgVO.getDriverClass());
				dataSource.setPassword(sourceCfgVO.getPasswd());
				dataSource.setUrl(sourceCfgVO.getJdbcUrl());
				dataSource.setUsername(sourceCfgVO.getUserName());
				dataSourceMap.put(sourceCfgVO.getCfgCode(), dataSource);*/
				BasicDataSource dataSource = new BasicDataSource();
				dataSource.setDriverClassName(sourceCfgVO.getDriverClass());
				dataSource.setMaxActive(sourceCfgVO.getMaxActive());
				dataSource.setMaxIdle(sourceCfgVO.getMaxIdle());
				dataSource.setMaxWait(sourceCfgVO.getMaxWait());
				dataSource.setPassword(sourceCfgVO.getPasswd());
				dataSource.setUrl(sourceCfgVO.getJdbcUrl());
				dataSource.setUsername(sourceCfgVO.getUserName());
				dataSource.setInitialSize(sourceCfgVO.getInitialSize());
				dataSource.setPoolPreparedStatements(true);
				dataSourceMap.put(sourceCfgVO.getCfgCode(), dataSource);
			}
			allDataSourceCfgMap.put(sourceCfgVO.getCfgCode(), sourceCfgVO);
		}


使用数据源
JdbcTemplate newJdbcTemplate = getJdbcTemplate(dataSource);
			return newJdbcTemplate.queryForList(sqlStr);

数据源VO
	private java.lang.String id;

	// fields
	private java.lang.String cfgCode;
	private java.lang.String cfgName;
	private java.lang.String driverClass;
	private java.lang.String jdbcUrl;
	private java.lang.String userName;
	private java.lang.String passwd;
	private java.lang.String remark;
	//最大激活链接数
	private java.lang.Integer maxActive;
	private java.lang.Integer maxIdle;
	private java.lang.Integer maxWait;
	private java.lang.Integer initialSize;



分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    Java多数据源共存,同时使用多个数据源

    Java多数据源是指在一个应用中使用不止一个数据库源,比如一个应用可能需要同时操作MySQL和Oracle数据库,或者在同一数据库中管理生产数据和测试数据。这种设计模式可以帮助我们灵活地分配和管理数据,提高系统的可...

    java简单分布式架构,多个数据源,线程池多线程访问

    本项目围绕“Java简单分布式架构,多个数据源,线程池多线程访问”这一主题展开,旨在通过利用Java技术栈实现一个高效的分布式系统。 首先,我们关注的是“分布式”这一概念。分布式系统是由多台计算机通过网络连接...

    java多数据源

    在实现动态数据库切换时,我们需要创建多个数据源配置。每个数据源代表一个数据库连接信息,包括URL、用户名、密码等。SpringMVC可以通过配置不同的`DataSource`bean来实现这一点。例如,我们可以创建两个`...

    java项目多数据源配置

    项目框架是springMVC+hibernate,一个简单的demo易懂,数据库配置自己修改datasource.properties文件,其中连接了两个MySQL数据库,数据库分别各有一张表,一张student表和一张t_user需要自己创建

    java+hibernate双数据源配置

    双数据源配置是指在一个应用中同时管理两个或更多的数据源,每个数据源可以连接到不同的数据库。在SpringBoot框架中,我们通常会使用`@ConfigurationProperties`注解来配置数据源,并通过`@Primary`注解指定默认数据...

    java spring 多数据源

    本教程将深入探讨如何在Spring中配置和管理多个数据源,并以MySQL为例进行实战演示。 首先,我们需要理解Spring Boot对数据源的默认支持。Spring Boot通过`spring.datasource.*`的配置属性简化了数据库连接的设置,...

    Java多数据源源码

    在处理多数据源时,Spring Boot提供了`@ConfigurationProperties`和`DataSourceAutoConfiguration`等机制,允许我们在配置文件(如application.yml或application.properties)中定义多个数据源的连接参数,然后在...

    java多数据源代码实例

    1. 配置数据源:在Spring的配置文件中,为每个数据源创建一个DataSource Bean,如:primaryDataSource和secondaryDataSource。 ```xml <!-- 数据源属性配置 --> <!-- 数据源属性配置 --> ``` 2. 配置数据源...

    java 多数据源

    3. **配置MyBatis**:在MyBatis的配置文件中,为每个数据源设置独立的SqlSessionFactory,并通过@SelectProvider、@InsertProvider等方式指定数据源。 4. **动态切换数据源**:在业务代码中,可以通过AOP(面向切面...

    Spring+Mybatis+Atomikos实现JAVA初始化并控制多个数据源+分布式事务

    在Java开发中,特别是在大型企业级应用中,处理多个数据源和分布式事务是常见的需求。本DEMO展示了如何使用Spring框架、Mybatis持久层框架以及Atomikos事务管理器来实现这一目标。以下是对这个DEMO中涉及的技术点的...

    java spring手写jdbcTemplate,实现查询多数据源数据。

    最近项目中的工作流需要查询多个数据源的数据,数据源可能是不同种类的:如sql server,oracl等等,一开始是用的配置实现,后来发现在项目运行中,可能需要动态的添加更多不同类型的数据源,所以最终的逻辑是将数据源...

    java多个数据库实现数据同步

    本文将深入探讨如何使用Java来实现多个数据库之间的数据同步。 首先,我们需要理解数据同步的含义。数据同步是指在两个或多个数据库之间,当某个数据库中的数据发生改变时,这些变化能够被实时或者近实时地反映到...

    JasperReport中使用多个数据源的方法

    ### JasperReport中使用多个数据源的方法详解 #### 场景背景 在报表开发过程中,有时我们需要在一个报表中展示不同来源的数据。例如,在同一份报告中同时呈现交叉表和饼状图,而这两部分数据可能源自不同的数据库表...

    java多数据源注解方式

    在Java开发中,多数据源配置是常见的需求,特别是在大型企业级应用中,可能需要连接到多个数据库,例如,一个用于存储主业务数据,另一个用于日志或审计数据。本篇将详细介绍如何通过注解的方式来实现Java中的多数据...

    Java 分布式事务(多数据源)

    5. **多数据源配置**:在Spring Boot项目中,可以通过配置多个数据源来支持分布式事务。每个数据源对应一个数据库连接池,并使用特定的数据源事务管理器。 6. **开源工具和库**:如Atomikos、Bitronix等事务管理器...

    jasperreport+ireport创建javaBean多数据源报表

    jasperreport允许使用多个数据源,这对于处理复杂报表场景非常有用。例如,一个报表可能需要合并来自不同数据库或不同JavaBean的数据。jasperreport通过定义多个JRDataSource和在报表设计中分别引用它们来实现这一...

    中国省市区数据源_java解析

    总的来说,中国省市区数据源的Java解析是地理信息系统开发的重要环节,它涉及到数据读取、处理、存储和查询等多个层面。通过有效的Java编程,我们可以构建出高效、准确的地理信息服务,服务于各类应用场景。理解和...

    java多数据源自动切换

    假设我们有两个数据源,分别命名为`dataSource1`和`dataSource2`: ```java @Service public class UserService { @UseDataSource("dataSource1") public User getUserByIdFromSource1(Long id) { // 这里将...

    java导出30万数据量的excel(采用生成多个excel,最后打包zip)

    将数据分为多个小块,每块生成一个Excel文件,这样可以降低内存消耗并提高处理效率。通常,块的大小根据实际内存和系统性能进行调整。 3. **多线程处理**: 为了进一步优化性能,可以考虑使用多线程同时处理不同数据...

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

    总结来说,SpringBoot实现多数据源和动态切换的关键在于正确配置多个数据源,创建自定义的AOP切面和ThreadLocal上下文。在实际项目中,还需要考虑事务管理、异常处理等复杂情况,确保数据的一致性和安全性。通过理解...

Global site tag (gtag.js) - Google Analytics