7.3 实战:实现 JdbcTemplate 多数据源

实战:实现 JdbcTemplate 多数据源
摘要由CSDN通过智能技术生成

第7章 JdbcTemplate 数据连接模板

7.1 JdbcTemplate 入门
7.2 使用 JdbcTemplate 操作数据库
7.3 实战:实现 JdbcTemplate 多数据源

7.3 实战:实现 JdbcTemplate 多数据源

7.3.1 什么是多数据源

所谓多数据源,其实就是在一个项目中使用 多个数据库实例中的数据库 或者 同一个数据库实例中多个不同的库


在实际开发中可能会遇到需要配置多个数据源的情况,比如项目需要使用业务数据库和日志数据库等多个数据库,或者需要使用多种数据库(如 MySQL、Oracle、SQL Server 等)。


JdbcTemplate 多数据源的配置比较简单,因为一个 JdbcTemplate 实例,需要操作哪个数据源就使用对应的 JdbcTemplate 实例即可。

7.3.2 配置 JdbcTemplate 多数据源

1、配置多数据源

application.properties

# 配置 JdbcTemplate 多数据源
# 数据源1(首选/主要的):
spring.datasource.primary.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.primary.jdbc-url=jdbc:mysql://localhost:3306/jdbc_test
spring.datasource.primary.username=root
spring.datasource.primary.password=******
# 数据源2(次选/次要的):
spring.datasource.secondary.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.secondary.jdbc-url=jdbc:mysql://localhost:3306/jdbc_test2
spring.datasource.secondary.username=root
spring.datasource.secondary.password=******

说明:

在上面的示例中,我们重新创建了 jdbc_test 和 jdbc_test2 两个数据库,再通过 jdbc_test 和 jdbc_test2 两个数据库演示多数据库的情况。我们可以看到上面的配置和原先单数据源的配置有些不同:
(1)在 application.properties 配置文件中添加了两个数据源,通过 primary 和 secondary 来区分,分别对应的是 jdbc_test 和 jdbc_test2 数据库。
(2)单数据源的数据库连接使用 spring.datasource.url 配置项,多数据源使用 spring.datasource.*.jdbc-url 配置项。


附录

单数据源配置案例:

# MySQL数据源配置(单数据源配置)
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/jdbctest?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&useSSL=true
spring.datasource.username=root
spring.datasource.password=******

2、配置 JDBC 初始化

DataSourceConfig.java

package com.example.jdbctemplateproject.config;

import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.jdbc.DataSourceBuilder;
import or
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值