Maison >Java >javaDidacticiel >Comment puis-je gérer les informations d'identification de la base de données Spring Boot dans différents environnements à l'aide de variables d'environnement ?

Comment puis-je gérer les informations d'identification de la base de données Spring Boot dans différents environnements à l'aide de variables d'environnement ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-02 11:37:11426parcourir

How Can I Manage Spring Boot Database Credentials Across Different Environments Using Environment Variables?

Utilisation de variables d'environnement dans Application.properties de Spring Boot

Lors du déploiement d'une application Spring Boot dans différents environnements, il est essentiel d'éviter le codage en dur informations d’identification de la base de données dans application.properties. Pour résoudre ce problème, les variables d'environnement peuvent être référencées dynamiquement dans le fichier de propriétés.

Pour tirer parti de cette approche, suivez ces étapes :

1. Créer des variables d'environnement système

Créez des variables d'environnement localement et sur toute autre machine virtuelle pertinente. Nommez ces variables de la même manière que leurs homologues OpenShift et attribuez les valeurs appropriées :

export OPENSHIFT_MYSQL_DB_HOST="jdbc:mysql://localhost"
export OPENSHIFT_MYSQL_DB_PORT="3306"
export OPENSHIFT_MYSQL_DB_USERNAME="root"
export OPENSHIFT_MYSQL_DB_PASSWORD="123asd"

2. Référencement des variables d'environnement dans application.properties

Pour inclure des variables d'environnement dans application.properties, utilisez la syntaxe suivante :

spring.datasource.url = ${OPENSHIFT_MYSQL_DB_HOST}:${OPENSHIFT_MYSQL_DB_PORT}/"nameofDB"
spring.datasource.username = ${OPENSHIFT_MYSQL_DB_USERNAME}
spring.datasource.password = ${OPENSHIFT_MYSQL_DB_PASSWORD}

3. Approche alternative (recommandée)

Cependant, une solution plus concise et plus gérable proposée par @Stefan Isele consiste à utiliser des profils Spring :

  • Créer plusieurs fichiers de propriétés nommés application-{profile-name}.properties.
  • Définissez la variable d'environnement spring.profiles.active au profil souhaité (par exemple, application-local.properties).

Spring lira automatiquement le fichier de propriétés approprié en fonction du profil spécifié.

En suivant Ces techniques, vous pouvez configurer dynamiquement votre application Spring Boot en fonction de l'environnement dans lequel elle est déployée, sans avoir à coder en dur les informations sensibles dans application.properties.

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!

Déclaration:
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