SpringBoot基礎回顧-3

1.5 全局配置文件
全局配置文件可以對一些默認配置值進行修改。Spring Boot使用一個application.properties或者application.yaml的文件做爲全局配置文件,該文件存放在src/main/resource目錄或者類路徑的/config,通常會選擇resource目錄。接下來,將針對這兩種全局配置文件進行講解 :
1.5.1 application.properties配置文件
使用Spring Initializr方式構建Spring Boot項目時,會在resource目錄下自動生成一個空的application.properties文件,Spring Boot項目啓動時會自動加載application.properties文件。
咱們能夠在application.properties文件中定義Spring Boot項目的相關屬性,固然,這些相關屬性能夠是系統屬性、環境變量、命令參數等信息,也能夠是自定義配置文件名稱和位置mysql

server.port=8081spring

spring.datasource.driver-class-name=com.mysql.jdbc.Driversql

spring.config.additional-location= app

spring.config.location= spring-boot

spring.config.name=application工具

1234567891011
接下來,經過一個案例對Spring Boot項目中application.properties配置文件的具體使用進行講解
演示:
預先準備了兩個實體類文件,後續會演示將application.properties配置文件中的自定義配置屬性注入到Person實體類的對應屬性中
(1)先在項目的com.lagou包下建立一個pojo包,並在該包下建立兩個實體類Pet和Person單元測試

public class Pet {測試

private String type;ui

private String name;code

// 省略屬性getXX()和setXX()方法

// 省略toString()方法

}
1234567891011121314151617181920

@Component //用於將Person類做爲Bean注入到Spring容器中

@ConfigurationProperties(prefix =
"person") //將配置文件中以person開頭的屬性注入到該類中

public class Person {

private int id; //id

private String name;      //名稱

  private List hobby;       //愛好

  private String[] family; //家庭成員

  private Map map;

  private Pet pet;          //寵物

// 省略屬性getXX()和setXX()方法

// 省略toString()方法

}
1234567891011121314151617181920212223242526272829303132
@ConfigurationProperties(prefix =
「person」)註解的做用是將配置文件中以person開頭的屬性值經過setXX()方法注入到實體類對應屬性中
@Component註解的做用是將當前注入屬性值的Person類對象做爲Bean組件放到Spring容器中,只有這樣才能被@ConfigurationProperties註解進行賦值
(2)打開項目的resources目錄下的application.properties配置文件,在該配置文件中編寫須要對Person類設置的配置屬性


編寫application.properties配置文件時,因爲要配置的Person對象屬性是咱們自定義的,Spring Boot沒法自動識別,因此不會有任何書寫提示。在實際開發中,爲了出現代碼提示的效果來方便配置,在使用@ConfigurationProperties註解進行配置文件屬性值注入時,能夠在pom.xml文件中添加一個Spring Boot提供的配置處理器依賴:

<dependency>

<groupId>org.springframework.boot</groupId>

   <artifactId>spring-boot-configuration-processor</artifactId>

   <optional>true</optional>

</dependency>
12345678910

在pom.xml中添加上述配置依賴後,還須要從新運行項目啓動類或者使用「Ctrl+F9」快捷鍵(即Build Project)重構當前Spring Boot項目方可生效
(3)查看application.properties配置文件是否正確,同時查看屬性配置效果,打開經過IDEA工具建立的項目測試類,在該測試類中引入Person實體類Bean,並進行輸出測試

@RunWith(SpringRunner.class) // 測試啓動器,並加載Spring Boot測試註解

@SpringBootTest // 標記爲Spring Boot單元測試類,並加載項目的ApplicationContext上下文環境

class SpringbootDemoApplicationTests {

// 配置測試

@Autowired

private Person person;

@Test

void
configurationTest() {

System.out.println(person);

}

}12345678910111213141516171819202122232425262728

相關文章
相關標籤/搜索