springboot整合JDBCTemplate 详解Springboot之整合JDBCTemplate配置多数据源

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

springboot整合JDBCTemplate 详解Springboot之整合JDBCTemplate配置多数据源

程序员孙大圣   2021-04-20 我要评论
想了解详解Springboot之整合JDBCTemplate配置多数据源的相关内容吗,程序员孙大圣在本文为您仔细讲解springboot整合JDBCTemplate的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:springboot整合JDBCTemplate,SpringBoot多数据源配置,SpringBoot多数据源,下面大家一起来学习吧。

一、前言

现在在我们的项目中,使用多数据源已经是很常见的,下面,这里总结一下springboot整合jdbcTemplate配置多数据源的代码示例,以方便以后直接使用.

二、配置文件

spring:
  datasource:
    datasourceone:
      driverClassName: com.mysql.jdbc.Driver
      url: jdbc:mysql://localhost:3306/eesy?serverTimezone=UTC&characterEncoding=utf8&useUnicode=true&useSSL=false
      username: root
      password: root
    dataSourcetwo:
      driverClassName: com.mysql.jdbc.Driver
      url: jdbc:mysql://localhost:3306/eesy?serverTimezone=UTC&characterEncoding=utf8&useUnicode=true&useSSL=false
      username: root
      password: root

三、数据源配置类

package com.ssl.datasource.config;
 
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.autoconfigure.jdbc.DataSourceProperties;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
 
import javax.sql.DataSource;
 
@Configuration
public class DataSourceOne {
 
    @Bean("name-template-one")
    public NamedParameterJdbcTemplate namedParameterJdbcTemplate(@Qualifier("datasource-one") DataSource dataSource){
        return new NamedParameterJdbcTemplate(dataSource);
    }
 
    @Bean("template-one")
    public JdbcTemplate jdbcTemplate(@Qualifier("datasource-one") DataSource dataSource){
        return new JdbcTemplate(dataSource);
    }
 
    @Bean("datasource-one")
    public DataSource dataSource(@Qualifier("jdbc-config-one") DataSourceProperties dataSourceProperties){
        return dataSourceProperties.initializeDataSourceBuilder().build();
    }
 
    @Primary
    @Bean("jdbc-config-one")
    @ConfigurationProperties(prefix = "spring.datasource.datasourceone")
    public DataSourceProperties properties(){
        return new DataSourceProperties();
    }
}
package com.ssl.datasource.config;
 
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.autoconfigure.jdbc.DataSourceProperties;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
 
import javax.sql.DataSource;
 
@Configuration
public class DataSourceTwo {
 
    @Bean("name-template-two")
    public NamedParameterJdbcTemplate namedParameterJdbcTemplate(@Qualifier("datasource-two") DataSource dataSource){
        return new NamedParameterJdbcTemplate(dataSource);
    }
 
    @Bean("template-two")
    public JdbcTemplate jdbcTemplate(@Qualifier("datasource-two") DataSource dataSource){
        return new JdbcTemplate(dataSource);
    }
 
    @Bean("datasource-two")
    public DataSource dataSource(@Qualifier("jdbc-config-two") DataSourceProperties dataSourceProperties){
        return dataSourceProperties.initializeDataSourceBuilder().build();
    }
 
    @Bean("jdbc-config-two")
    @ConfigurationProperties(prefix = "spring.datasource.datasourcetwo")
    public DataSourceProperties properties(){
        return new DataSourceProperties();
    }
}

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们