多数据源配置JdbcTemplate(十五)上

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 工作中,在业务的发展或业务数据隔离的场景下,通常需要一个项目中引入多个数据源,但SpringBoot默认的自动化配置是单数据源的,可以通过一些额外的配置,进行处理。

一. 多数据源配置前的工作准备


一.一 准备两个数据库 springboot 和springboot2


springboot 数据库里面存放着 user 表


springboot2 数据库表里面存放着 dept 表


-- 在 springboot 数据库里面 创建 user 表
use springboot;
CREATE TABLE `user` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `name` varchar(15) DEFAULT NULL,
    `sex` varchar(20) DEFAULT NULL,
    `age` int(6) DEFAULT NULL,
    `description` varchar(50) DEFAULT NULL,
    PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
--  在 springboot2 数据库里面 创建 dept 表
CREATE TABLE `dept` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `name` varchar(200) DEFAULT NULL,
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;


一.二 准备对应的实体 User.java 和 Dept.java


User.java


@Data
@NoArgsConstructor
@AllArgsConstructor
public class User {
    /**
     * @param id id编号
     * @param name 姓名
     * @param sex 性别
     * @param age 年龄
     * @param description 描述
     */
    private Integer id;
    private String name;
    private String sex;
    private Integer age;
    private String description;
}


Dept.java


@Data
public class Dept {
    /**
     * @param id id编号
     * @param name 部门名称
     */
    private Integer id;
    private String name;
}


一.三 JdbcTemplate 的使用


关于 JdbcTemplate 的使用,可以看老蝴蝶以前写的文章: SpringBoot整合JdbcTemplate(五)


项目目录:

435bf12bc204274d12316c5309d89a7c.png


二. JdbcTemplate 多数据源配置


二.一 pom.xml 文件添加依赖


 <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
     <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.2.6</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>


二.二 application.yml 配置多数据源


# 引入 数据库的相关配置
#spring:
#  datasource:
#    driver-class-name: com.mysql.cj.jdbc.Driver
#    url: jdbc:mysql://localhost:3306/springboot?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8&useSSL=false
#    username: root
#    password: abc123
# 配置成多数据源的形式
spring:
 datasource:
   # 配置第一个数据库
   one:
     driver-class-name: com.mysql.cj.jdbc.Driver
     url: jdbc:mysql://localhost:3306/springboot?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8&useSSL=false
     username: root
     password: abc123
     type: com.alibaba.druid.pool.DruidDataSource
  # 配置第二个数据库
   two:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/springboot2?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8&useSSL=false
    username: root
    password: abc123
    type: com.alibaba.druid.pool.DruidDataSource



相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
6月前
|
存储 关系型数据库 MySQL
【mybatis-plus】Springboot+AOP+自定义注解实现多数据源操作(数据源信息存在数据库)
【mybatis-plus】Springboot+AOP+自定义注解实现多数据源操作(数据源信息存在数据库)
|
6月前
|
SQL Java 关系型数据库
SpringBoot整合JDBC与默认数据源
SpringBoot整合JDBC与默认数据源
77 0
|
XML Java 数据库连接
使用Spring JDBC中的JdbcTemplate对数据进行增删改查操作教程~
使用Spring JDBC中的JdbcTemplate对数据进行增删改查操作教程~
292 0
|
关系型数据库 MySQL Java
SpringBoot-14-JdbcTemplate多数据源操作
在上一章节中我们已经介绍了在Springboot中使用JdbcTemplate来完成对mysql数据库的基本操作,本章节主要介绍当我们在项目中需要使用多个数据源的时候JdbcTemplate是怎么进行配置的。本章节是在上章节代码使用JdbcTemplate链接Mysql数据库基础上进行修改的。
145 0
|
Java 数据库 Spring
Spring学习(十):JdbcTemplate操作数据库实现查询功能
Spring学习(十):JdbcTemplate操作数据库实现查询功能
271 0
Spring学习(十):JdbcTemplate操作数据库实现查询功能
|
SQL Java
SpringBoot高级篇JdbcTemplate之数据更新与删除
前面介绍了JdbcTemplate的插入数据和查询数据,占用CURD中的两项,本文则将主要介绍数据更新和删除。从基本使用上来看,姿势和前面的没啥两样
885 0
SpringBoot高级篇JdbcTemplate之数据更新与删除
|
druid Oracle 架构师
SpringBoot从小白到精通(十四)使用JdbcTemplate操作数据库,配置多数据源!
Spring Boot 除了Mybatis数据库框架,还有JdbcTemplate等数据库操作框架,同样也比较简单实用,如果是一般简单的项目,用JdbcTemplate完全可以实现相关的数据库操作。它虽然没有MyBatis功能强大,但使用比较简单,JdbcTemplate应该算是最简单的数据持久化方案,所以下面就来给大家介绍Spring Boot 使用JdbcTemplate操作数据库,配置多数据源!
SpringBoot从小白到精通(十四)使用JdbcTemplate操作数据库,配置多数据源!
|
Java 关系型数据库 MySQL
springboot学习-使用JdbcTemplate操作MySQL数据库
springboot学习-使用JdbcTemplate操作MySQL数据库
279 0
springboot学习-使用JdbcTemplate操作MySQL数据库
|
存储 Java 数据库
多数据源配置JdbcTemplate(十五)下
多数据源配置JdbcTemplate(十五)
175 0
多数据源配置JdbcTemplate(十五)下
|
Java 数据库连接 数据安全/隐私保护
多数据源配置MyBatis(十七)中
上一章简单介绍了多数据源配置Jpa(十六),如果没有看过,请观看上一章 工作中,在业务的发展或业务数据隔离的场景下,通常需要一个项目中引入多个数据源, 但SpringBoot默认的自动化配置是单数据源的,可以通过一些额外的配置,进行处理。
226 0
多数据源配置MyBatis(十七)中