Maison > Java > javaDidacticiel > le corps du texte

Comment les propriétés de configuration sont-elles liées dans Spring Boot ?

WBOY
Libérer: 2024-04-18 09:09:02
original
625 Les gens l'ont consulté

Les propriétés de configuration dans Spring Boot peuvent être liées aux classes de propriétés de configuration à partir de sources de propriétés, notamment les fichiers de propriétés d'application, les variables d'environnement et les paramètres de ligne de commande. La liaison de propriété est effectuée via l'annotation @ConfigurationProperties. Cas pratique : créez une classe d'attributs de configuration, liez la source d'attribut et obtenez l'attribut de configuration.

Spring Boot 中的配置属性是如何绑定的?

Liaison des propriétés de configuration dans Spring Boot

Spring Boot fournit un puissant mécanisme de propriétés de configuration, qui nous permet de lier facilement les propriétés de configuration provenant de diverses sources telles que les fichiers de propriétés d'application, les variables d'environnement et les paramètres de ligne de commande. lier les valeurs de configuration à notre application.

Création d'une classe d'attributs de configuration

Tout d'abord, nous devons créer une classe d'attributs de configuration pour déclarer les champs et les types de l'attribut de configuration. Par exemple, la classe suivante définit deux propriétés de configuration :

@ConfigurationProperties("my.app")
public class AppConfig {
    private String name;
    private int port;

    // getter and setter methods
}
Copier après la connexion

Sources de propriétés

Dans Spring Boot, les propriétés de configuration peuvent être liées à diverses sources de propriétés. Les sources de propriétés les plus courantes incluent :

  • Fichier de propriétés de l'application : Situé dans src/main/resources/application.properties et contient des paires clé-valeur.
  • src/main/resources/application.properties 中,包含键值对。
  • 环境变量:系统环境变量,以 MY_APP_NAME 等格式命名。
  • 命令行参数:--my.app.name=value 等格式传递给应用程序。

属性绑定

Spring Boot 会自动将配置属性从属性源绑定到配置属性类。此绑定通过 @ConfigurationProperties 注解完成。

实战案例

以下是一个实战案例,展示了如何在 Spring Boot 应用程序中使用配置属性:

@SpringBootApplication
public class MyApp {
    public static void main(String[] args) {
        SpringApplication.run(MyApp.class, args);
        AppConfig config = beanFactory.getBean(AppConfig.class);

        System.out.println("Name: " + config.getName());
        System.out.println("Port: " + config.getPort());
    }
}
Copier après la connexion

在这个示例中,我们创建了一个 AppConfig 类,并使用 @ConfigurationProperties 注解将其声明为配置属性类。然后,我们使用 beanFactory 获取 AppConfig bean,并打印配置的属性值。

运行此应用程序并提供 application.properties

Variables d'environnement :

Variables d'environnement système, nommées au format MY_APP_NAME.

🎜Paramètres de ligne de commande : 🎜 sont transmis à l'application au format --my.app.name=value. 🎜🎜Property Binding🎜🎜🎜Spring Boot lie automatiquement les propriétés de configuration de la source de propriété à la classe de propriétés de configuration. Cette liaison se fait via l'annotation @ConfigurationProperties. 🎜🎜🎜Un cas pratique🎜🎜🎜Ce qui suit est un cas pratique montrant comment utiliser les propriétés de configuration dans une application Spring Boot : 🎜
my.app.name=My Application
my.app.port=8080
Copier après la connexion
🎜Dans cet exemple, nous créons une classe AppConfig et la déclarons comme une classe de propriétés de configuration utilisant l'annotation @ConfigurationProperties. Nous utilisons ensuite beanFactory pour obtenir le bean AppConfig et imprimer les valeurs des propriétés configurées. 🎜🎜Exécutez cette application et fournissez le fichier application.properties : 🎜
Name: My Application
Port: 8080
Copier après la connexion
🎜Vous devriez voir le résultat dans la console : 🎜rrreee

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:php.cn
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