欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Spring Boot单数据源自定义配置

程序员文章站 2022-03-02 18:14:01
...

Spring会自动配置很多@Bean对象,所以你可以专注于应用的逻辑开发。这篇文章,我会整理配置单数据源,以未后来配置多数据源做准备。

基本的项目架构是,以Java方式配置数据源,并在application.properties文件中配置元信息。

@Configuration
@EnableConfigurationProperties
public class DataSourceConfig {
   //注释方式JPA repository配置
   @Bean
   //获取.properties属性文件的配置元数据
   @Primary
   @ConfigurationProperties("oneslide.datasource")
   public DataSource firstDataSource() {
       //以DataSourceBuilder对象来构造数据源DataSource对象
       return firstDataSourceProperties().initializeDataSourceBuilder().build();
       //return DataSourceBuilder.create().build();
   }
   @Bean
   @Primary
   //获取Environment属性,Environment从.properties文件获取配置信息
   @ConfigurationProperties("oneslide.datasource")
   public DataSourceProperties firstDataSourceProperties() {
    return new DataSourceProperties();
   }
  }

注意到 @ConfigurationProperties("oneslide.datasource"),这条语句能够指定Java加载元信息的位置。
比如,你可以这样在application.properties文件中配置让加载时连接信息被加载到:

    oneslide.datasource.url=jdbc:mysql://localhost/webofoneslide
    oneslide.datasource.username=root
    oneslide.datasource.password=********
@Primary标签为标识主数据源,在多数据源的情况下,有用。搭载基本的JPA配置,我的应用可以使用到mySQL数据源

参考文档:
Spring Boot Reference Documentation