springboot Hikari多数据源

 <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
</dependency>
spring:
   # 配置数据源信息
  datasource:
    type: com.zaxxer.hikari.HikariDataSource
    dynamic:
      #设置默认的数据源或者数据源组,默认值即为master
      primary: master
      strict: false
      datasource:
        #这里采用了配置文件取值的方式,可以直接替换为数据库连接
        master:
          url: jdbc:mysql://ip:端口/databsae1
          username: 用户名
          password: 密码
          driver-class-name: com.mysql.cj.jdbc.Driver
          hikari:
            pool-name: 连接池名称
            max-pool-size: 20
            min-idle: 5
            idle-timeout: 60000
            max-lifetime: 300000
            connection-timeout: 30000
            validation-timeout: 5000
            connection-test-query: select 'x'
@Mapper
public interface TestInfoMapper extends BaseMapper<TestInfo> {

    @DS("master")
    List<TestInfo> select(Integer param);
}

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot是一个非常流行的Java框架,它提供了很多方便的功能,包括数据源管理。而HikariCP是一个高效的数据库连接池,它具有快速、稳定和可扩展性的优点。当我们需要在Spring Boot中使用多个数据源时,可以选择使用HikariCP来管理这些数据源。 首先,我们需要在pom.xml文件中引入HikariCP的依赖。然后,我们可以在application.properties或application.yml中配置多个数据源。在这些配置中,我们需要为每个数据源指定一个HikariCP连接池。例如: ``` spring.datasource.primary.driver-class-name=com.mysql.jdbc.Driver spring.datasource.primary.jdbc-url=jdbc:mysql://localhost:3306/primary spring.datasource.primary.username=username spring.datasource.primary.password=password spring.datasource.secondary.driver-class-name=com.mysql.jdbc.Driver spring.datasource.secondary.jdbc-url=jdbc:mysql://localhost:3306/secondary spring.datasource.secondary.username=username spring.datasource.secondary.password=password # HikariCP配置 spring.datasource.primary.hikari.maximum-pool-size=10 spring.datasource.secondary.hikari.maximum-pool-size=20 ``` 在这个配置中,我们定义了两个数据源primary和secondary,并为它们每个指定了一个HikariCP连接池。我们还为每个连接池定义了一个最大连接数。 接下来,在我们的代码中,我们需要使用@Qualifier注解来注入正确的数据源。例如: ``` @Autowired @Qualifier("primary") private DataSource primaryDataSource; @Autowired @Qualifier("secondary") private DataSource secondaryDataSource; ``` 在使用数据源时,我们只需要在需要使用数据源的地方使用正确的数据源。例如: ``` @Repository public class PrimaryDao { private JdbcTemplate jdbcTemplate; @Autowired public void setDataSource(@Qualifier("primary") DataSource dataSource) { jdbcTemplate = new JdbcTemplate(dataSource); } // ... } @Repository public class SecondaryDao { private JdbcTemplate jdbcTemplate; @Autowired public void setDataSource(@Qualifier("secondary") DataSource dataSource) { jdbcTemplate = new JdbcTemplate(dataSource); } // ... } ``` 在这个例子中,我们定义了两个DAO,每个DAO都需要使用不同的数据源。我们使用@Qualifier注解来注入正确的数据源,然后在JdbcTemplate中使用该数据源。 总的来说,使用Spring BootHikariCP管理多个数据源非常简单,只需要配置不同的数据源和连接池,然后注入正确的数据源即可。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值