1. 程式人生 > 其它 >SpringBoot mybatis使用外部配置配置檔案配置資料來源

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();
    }
}