Rumah  >  Artikel  >  Java  >  Bagaimanakah Springboot menentukan untuk mendapatkan nilai konfigurasi dalam fail yml?

Bagaimanakah Springboot menentukan untuk mendapatkan nilai konfigurasi dalam fail yml?

王林
王林ke hadapan
2023-05-15 09:55:121239semak imbas

Kandungan:

Berikut ialah dua kaedah, kedua-duanya berdasarkan pelaksanaan anotasi, iaitu:

@Value("${xxxxx.xx}")

@ConfigurationProperties(prefix = "xxxxx")

Enter topik:

@Value("${xxxxx.xx}")

Menggunakan kaedah ini sangat mudah (setiap anotasi mendapat nilai konfigurasi yang sepadan),

Tambah item konfigurasi tersuai kami dalam yml, seperti (huruf besar atau huruf kecil, hanya padankannya semasa memanggil):

Bagaimanakah Springboot menentukan untuk mendapatkan nilai konfigurasi dalam fail yml?

Nyatakan untuk mendapatkan nilai ini untuk digunakan, seperti:

@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);
    }

Anda boleh melihat hasilnya dan mendapatkannya seperti biasa:

Bagaimanakah Springboot menentukan untuk mendapatkan nilai konfigurasi dalam fail yml?

@ConfigurationProperties(prefix = "xxxxx")

Menggunakan kaedah ini juga Ia sangat mudah (dapatkan berbilang nilai konfigurasi sekaligus dan buat seketika menjadi kacang dan masukkannya ke dalam bekas musim bunga). pada mulanya Gunakan huruf kecil, huruf besar akan menyebabkan ralat, kerana awalan tidak menyokong bentuk penamaan huruf unta dan garis bawah):

Bagaimanakah Springboot menentukan untuk mendapatkan nilai konfigurasi dalam fail yml? Kemudian kami membina kelas entiti untuk item konfigurasi ini dan gunakan anotasi di atas @ConfigurationProperties, seperti:

awalan merujuk kepada awalan, yang biasanya yang pertama dalam contoh kami ialah 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;
    }
}

menentukan untuk mendapatkan nilai ini. ​​untuk digunakan, yang bersamaan dengan menggunakan Kelas ini boleh digunakan terus dengan @Autowired:

@Autowired
    MyInfo myInfo;
 
    @GetMapping("/getMyTest")
    public void getMyTest(){
 
        System.out.println("myInfo:"+myInfo.toString());
        System.out.println("myInfo name:"+myInfo.getName());
    }

Anda boleh melihat hasilnya dan mendapatkannya seperti biasa:

Atas ialah kandungan terperinci Bagaimanakah Springboot menentukan untuk mendapatkan nilai konfigurasi dalam fail yml?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam