springboot配置文件兩種方式

application.proerties-->
    jdbc.driverclassname=com.mysql.jdbc.Driver
    jdbc.url=jdbc:mysql://localhost:3306/test
    jdbc.username=root
    jdbc.password=root
===springboot 配置一======================================================================================================
1.修改配置文件爲application.properties。
 默認加載文件名,可以省略掉以下代碼
 //@PropertySource("classpath:application.properties")

2.創建java配置類 jdbcProerties,並使用插件提供set/get方法
 ---------------
    @Component //magic annoation  ,dont't touch
    @ConfigurationProperties(prefix = "jdbc")
    @Data  //lombok插件自動生成set/get  hashcode equeas......
    public  class JdbcProperties {

        String driverclassname;
        String url;
        String username;
        String password;
    }
--------------------
 3.使用配置類
    @Configuration
    @EnableConfigurationProperties(JdbcProperties.class)
    public class JdbcConfig {
    //或者通過Autowried
    //@Autowried
    //JdbcProperties  prop
    @Bean
     public DataSource dataSource(JdbcProperties prop){   //spring直接注入哦
         DruidDataSource dataSource = new DruidDataSource();
         dataSource.setDriverClassName(prop.getDriver());
         dataSource.setUrl(prop.getUrl());
         dataSource.setUsername(prop.getUsername());
         dataSource.setPassword(prop.getPassword());
         return  dataSource;
     }
    }

==================方式二============================================================================
@Configuration
public class JdbcConfig {
     @Bean
     @ConfigurationProperties(prefix = "jdbc") //掃描到這時尋找jdbc.***屬性進行自動注入
     public DataSource dataSource(){
          return   new DruidDataSource();
     }
     }
 》》》------------yaml 代替properties配置文件
 jdbc:
   driverclassname: com.mysql.jdbc.Driver
   url: jdbc:mysql://localhost:3306/test
   username: root
   password: songhang
 #兩種文件都有時,取兩個文件的並集,重名的以properties爲準
自動配置實現:
    @SpringBootApplication  //內部也加了springbootConfiguration ,而@springbootConfiguration上加了
                                          @configuration  說明是一個配置文件,但是轉換爲spring的配置了
                                         @EnableAutoConfiguration 配置開關, 檢測依賴 ,猜測配置
                                         @ComponentScan  默認是聲明瞭註解的包開始掃描,就是@SpringBootApplication 所在的包,也可以覆蓋這個註解

ps:個人理解,如有錯誤請指正,謝謝.

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章