.properties這個配置文件比.yml配置文件冗餘,用yml文件會顯得更加整潔美觀
兩個配置文件語法對比
具體寫法如下
首先創建一個後綴.yml的文件
##定義自己的配置文件 不要直接定義字段,這樣不好,在配置字段前面可以加上團隊名稱或者框架名稱
## xyt:團隊名稱,userName/age字段名 注意每個層級之間的縮進,
##冒號(:)後面一定要跟個空格,正確的語法是 定義的字段顏色是深藍色的,後面的值是灰色的。
xyt:
userName: 菜鳥學習Springboot的第N天
age: 22
創建一個類讀取自己在配置文件定義的字段
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class UserController {
@Value("${xyt.userName}")//@Value讀取配置文件的字段,xyt:團隊名稱或者框架名稱,userName配置文件的字段名
private String userName;
@Value("${xyt.age}")
private String age;
@RequestMapping("/getValue")
public String getValue() {
return userName + ",年齡:" + age;
}
}
多環境配置文件
例子:
公司的配置文件都是分類
- dve本地開發環境
- test服務器測試環境
- pre預生產環境
- prod正式生產環境
application-dve.yml
##本地開發環境
xyt:
userName: 本地開發環境
url: dve.xyt.com
application-test.yml
##測試環境配置
xyt:
userName: 測試環境
url: test.xyt.com
application-pre.yml
##預生產環境配置
xyt:
userName: 預生產環境
url: pre.xyt.com
application-prod.yml
##正式環境
xyt:
userName: 正式環境
url: prod.xyt.com
讀取配置文件的信息
@RestController
public class IndexController {
@Value("${xyt.userName}")//xyt.userName 配置文件裏:xyt+userName
private String userName;
@Value("${xyt.url}")
private String url;
@RequestMapping("/getUrl")
public String gerUrl() {
return userName + ":" + url;
}
}
啓動代碼:
package com.xyt.springboot;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class AppSpringBootMybatis {
public static void main(String[] args) {
SpringApplication.run(AppSpringBootMybatis.class, args);
}
}
啓動結果