Maison > Java > javaDidacticiel > Comment Springboot précise-t-il d'obtenir les valeurs de configuration dans le fichier yml ?

Comment Springboot précise-t-il d'obtenir les valeurs de configuration dans le fichier yml ?

王林
Libérer: 2023-05-15 09:55:12
avant
1298 Les gens l'ont consulté

Contenu :

Voici deux méthodes présentées, toutes deux basées sur des annotations, à savoir :

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

@ConfigurationProperties(prefix = "xxxxx")

@ConfigurationProperties( prefix = "xxxxx")

Entrez le sujet :

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

L'utilisation de cette méthode est très simple (chaque annotation obtient une valeur de configuration correspondante),

Ajoutez nos éléments de configuration personnalisés dans le yml, tels que (majuscules et minuscules, faites-les simplement correspondre lors de l'appel) :

Comment Springboot précise-t-il dobtenir les valeurs de configuration dans le fichier yml ?

Spécifiez pour que ces valeurs soient utilisées, telles que :

@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);
    }
Copier après la connexion

Vous pouvez voir les résultats et récupérez-les normalement :

Comment Springboot précise-t-il dobtenir les valeurs de configuration dans le fichier yml ?

@ConfigurationProperties(prefix = "xxxxx")

Il est également très simple d'utiliser cette méthode (obtenir plusieurs valeurs de configuration en même temps et les instancier dans des beans et les mettre au printemps conteneur),

Ajoutez-les dans yml Nos éléments de configuration personnalisés, tels que (notez que le paramètre clé au début est en minuscule, et il serait erroné d'utiliser des majuscules, car le préfixe ne prend pas en charge la dénomination de la casse chameau et la forme de trait de soulignement) :

Comment Springboot précise-t-il dobtenir les valeurs de configuration dans le fichier yml ?

Ensuite, nous construisons un élément de configuration pour ces éléments de configuration Entity class, et utilisons l'annotation @ConfigurationProperties, telle que :

prefix fait référence au préfixe, qui est généralement le premier dans notre exemple. is 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;
    }
}
Copier après la connexion

Spécifie d'obtenir ces valeurs à utiliser, ce qui équivaut à utiliser cette classe, vous pouvez l'utiliser directement avec @Autowired :

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

Vous pouvez voir le résultat et l'obtenir normalement :

Comment Springboot précise-t-il dobtenir les valeurs de configuration dans le fichier yml ?

🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal