Spring Boot 讀取配置檔案
阿新 • • 發佈:2022-05-12
Spring Boot 讀取配置檔案
Spring Boot 讀取配置檔案有兩種方式:
- 載入多個
@ConfigurationProperties(xxx)
- 載入單個
@Value('${xxx}')
廢話不多說,直接上例子
載入多個配置項資訊
1、在springboot專案裡的yml新增資訊
custom:
name: xxx
url: 192.168.0.168
app-version: 0.2
2、建立配置類
@Component @ConfigurationProperties(prefix = "custom-config") @Data @ToString public class CoustomConfig { private String name; private String url; private String version; }
3、測試
@SpringBootTest
public class DemoTest {
@Autowired
private CoustomConfig coustomConfig;
@Test
public void test01(){
System.out.println(coustomConfig.toString());
}
}
結果:
載入單個配置項資訊
1、新增專案埠資訊
server:
port: 8089
2、獲取配置資訊,並測試
@SpringBootTest public class DemoTest { @Value(value = "${server.port}") private String port; @Test public void test02(){ System.out.println(port); } }
結果:
擴充套件:
- springboot載入預設配置檔案會有優先順序。
- 所有的配置檔案spring都會讀取,相互之間不會排斥,但是會覆蓋。
- 相同配置項,高優先順序配置檔案的內容會覆蓋低優先順序的配置,低優先順序配置不會生效。
小總結:
1、使用@ConfigurationProperties
需要搭配@Component
來使用,並pojo對應的屬性得有set方法(通過反射注入值)(屬性名可以不一樣,setter方法名相同即可)
2、使用@Value
時,需要注意${}
。
3、@ConfigurationProperties
和 @Value
都是可以取到下面的值