SpringBoot mybatis使用外部配置配置文件配置数据源

  • 我们知道springboot 都是一系列的bean 如果需要修改数据源信息,那么配置信息肯定是在某个bean中,即 DataSource,但是 DataSource的构建是通过 DataSourceBuilder.create().build() 来创建的,所以找到了 DataSourceBuilder.class 这个类;里面定义了创建数据库连接的基本属性

  • 所以我们重新创建一个数据源配置类,来重新配置数据源

  • DataSourceConfig.java

@Configuration
@ComponentScan

//定义外部配置文件位置 此处的 ${CONFIG_PATH} 是系统环境变量中定义好的 CONFIG_PATH 可以指定其他的路径
@PropertySource(value="file:${CONFIG_PATH}dbConfig/mysql-jdbc.properites",ignoreResourceNotFound = true)

//配置文件属性名的前缀  比如 jdbc.driverClassName 前缀为jdbc 读取需要配置前缀
@ConfigurationProperties(prefix="jdbc")
public class DataSourceConfig{

    private String driverClassName;
    private String url;
    private String username;
    private String password;
    
    // getter and setter.....
    @Bean
    public DataSource getDataSource(){
        DataSourceBuilder dataSourceBuilder = DataSourceBuilder.create();
        dataSourceBuilder.driverClassName(this.driverClassName);
        dataSourceBuilder.username(this.username);
        dataSourceBuilder.password(this.password);
        dataSourceBuilder.url(this.url);

        return dataSourceBuilder.build();
    }
}
原文地址:https://www.cnblogs.com/linux0kk/p/15175762.html