ここでは 2 つのメソッドを紹介します (どちらもアノテーションに基づいています)。
@Value("${xxxxx.xx}")
@ConfigurationProperties(prefix = "xxxxx")
このメソッドの使用は非常に簡単です (各アノテーションは対応する構成値を取得します)。
カスタム構成項目を yml に追加します (大文字または小文字。呼び出し時に一致してください)。 ) 問題ありません):
使用するためにこれらの値を取得するように指定します。たとえば:
@Value("${myKey.tua}") private String tuaKey; @Value("${myKey.aco}") private String acoKey; @Value("${mynum.new}") private String myNum; @GetMapping("/getMyTest") public void getMyTest(){ System.out.println("tuaKey:"+tuaKey); System.out.println("acoKey:"+acoKey); System.out.println("myNum:"+myNum); }
結果を確認し、通常どおり取得できます。
この方法を使用するのも非常に簡単です (一度に複数の構成値を取得し、それらを Bean にインスタンス化し、Spring コンテナーに置きます)、
カスタム構成項目を yml に追加します (先頭のキー パラメーターは小文字にする必要があることに注意してください。使用するのは間違いです)
次に、これらの構成項目のエンティティ クラスを構築し、次のような注釈 @ConfigurationProperties を使用します。
prefix はプレフィックスを指します, 通常は最初のものです. この例の最初のものは myinfoです
import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; /** * @Author : JCccc * @CreateTime : 2020/5/19 * @Description : **/ @Component @ConfigurationProperties(prefix = "myinfo") public class MyInfo { private String name; private Integer age; private String description; @Override public String toString() { return "MyTest{" + "name="" + name + """ + ", age=" + age + ", description="" + description + """ + "}"; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } }
は使用するこれらの値を取得することを指定します, これは使用するのと同等ですこのクラスを @Autowired で直接使用すると:
@Autowired MyInfo myInfo; @GetMapping("/getMyTest") public void getMyTest(){ System.out.println("myInfo:"+myInfo.toString()); System.out.println("myInfo name:"+myInfo.getName()); }
結果が表示されます。通常の状態になります:
以上がSpringbootはymlファイルの設定値を取得するためにどのように指定しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。