Springboot配置多数据源(Mysql和Orcale)--(Idea Maven JDBCTemplate支持下的)

1.配置 orcale jdbc 

  对于一个Maven项目,使用Mysql时,可直接添加如下依赖:

  
<dependency>
  <groupId>mysql</groupId>
  <artifactId>mysql-connector-java</artifactId>
  <version>8.0.11</version>
</dependency>

 但是对于Orcale来说,由于Orcale对Maven的授权问题,jdbc并不能像Mysql那样直接配置,
 需要在本地仓库(如果使用的是自己的仓库,需在自己的仓库添加)里添加ojdbc的依赖包: Springboot配置多数据源(Mysql和Orcale)--(Idea   Maven JDBCTemplate支持下的) 在目录C:\Users\Administrator\.m2\repository\com\oracle\ojdbc6下添加ojdbc jar包
jar包下载地址 https://pan.baidu.com/s/1_147I-TFRA_wnoYmCkiSiA
添加pom依赖:
    
      
<dependency>
 <groupId>com.oracle</groupId>
 <artifactId>ojdbc6</artifactId>
 <version>11.2.0.1.0</version>
</dependency>

会发现项目已经出现ojdbc的 jar包
Springboot配置多数据源(Mysql和Orcale)--(Idea   Maven JDBCTemplate支持下的)2.Spring Boot多数据源配置与使用 ①application.properties 添加数据库信息 Springboot配置多数据源(Mysql和Orcale)--(Idea   Maven JDBCTemplate支持下的) ②创建一个Spring配置类,定义两个DataSource用来读取application.properties中的不同配置
@Configuration
public class DataSourceConfig { @Bean(name = "primaryDataSource")
@Qualifier("primaryDataSource")
@ConfigurationProperties(prefix="spring.datasource.primary")
public DataSource primaryDataSource() {
return DataSourceBuilder.create().build();
} @Bean(name = "secondaryDataSource")
@Qualifier("secondaryDataSource")
@Primary
@ConfigurationProperties(prefix="spring.datasource.secondary")
public DataSource secondaryDataSource() {
return DataSourceBuilder.create().build();
}

③ JdbcTemplate的支持 比较简单,只需要为其注入对应的datasource即可

@Bean(name = "primaryJdbcTemplate")
public JdbcTemplate primaryJdbcTemplate(
@Qualifier("primaryDataSource") DataSource dataSource) {
return new JdbcTemplate(dataSource);
} @Bean(name = "secondaryJdbcTemplate")
public JdbcTemplate secondaryJdbcTemplate(
@Qualifier("secondaryDataSource") DataSource dataSource) {
return new JdbcTemplate(dataSource);
}

④ 测试类

  

@RunWith(SpringJUnit4ClassRunner.class)
@SpringApplicationConfiguration(Application.class)
public class ApplicationTests { protected final Logger cLogger = Logger.getLogger(getClass()); @Autowired
@Qualifier("primaryJdbcTemplate")
protected JdbcTemplate jdbcTemplate1; @Autowired
@Qualifier("secondaryJdbcTemplate")
protected JdbcTemplate jdbcTemplate2; @Test
public void test() throws Exception { String sql="select * from ldsysvar";
List resultList=jdbcTemplate1.queryForList(sql);
cLogger.info("\n"+resultList); String sql1="select * from prturl";
List resultList1=jdbcTemplate2.queryForList(sql1);
cLogger.info("\n"+resultList1); }
 

 
上一篇:php 资源


下一篇:sql 行转列总结