springBoot 讀取配置文件yml中的信息


 

yml中自定義一些變量

var:
  analyze_url: test
  ocr_url: test
  microsoft_key: test

映射到類變量中

@Getter
@Component
public class varModel {
    @Value("${var.analyze_url}")
    private String analyze_url;
    @Value("${var.ocr_url}")
    private String ocr_url;
    @Value("${var.microsoft_key}")
    private String microsoft_key;
}//end

調用方式

注入

    @Autowired
    varModel varModel_;

通過  varModel_ 調用

yaml 語法中 雙引號和單引號是不一樣的,如

name: "zhangsan \n list"  獲取的值為 zhangsan 換行 list

name : 'zhangsan \n list'  獲取的值為zhangsan \n list

也就是說雙引號中的特殊字符還是表示其原來的意思,單引號中的特殊字符就只是一個特殊字符。

 

yml 根據類直接注入

寫一個varModel 類將里面的屬性全部注入進去

@Component
@ConfigurationProperties(prefix = "var-model")
@Getter
@Setter
public class varModel {
    private String name;
    private Map<String,String> mapList;
    private List<String> listStr;
}//end

yml 第一層命名規范,小寫字母加短橫杠

varModel類中出現這個錯誤

官方解決辦法

<dependency>
            <groupId> org.springframework.boot </groupId>
            <artifactId> spring-boot-configuration-processor </artifactId>
            <optional> true </optional>
        </dependency>

 yml中的另一個用法

使用${} 語法獲取yml中其他數據。

 

 
       


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM