ホームページ > データベース > mysql チュートリアル > 環境変数と Spring Boot プロファイルを使用して異なる環境の構成を管理する方法

環境変数と Spring Boot プロファイルを使用して異なる環境の構成を管理する方法

DDD
リリース: 2024-12-16 18:19:22
オリジナル
450 人が閲覧しました

How to Use Environment Variables and Spring Boot Profiles to Manage Configuration in Different Environments?

Spring Boot の application.properties での環境変数の使用

Spring Boot アプリケーションでは、多くの場合、環境に基づいて構成値を動的に設定する必要があります。アプリケーションが実行されている場所。これは、開発、テスト、運用など、さまざまな環境にアプリケーションをデプロイする場合に特に便利です。

application.properties で環境変数を使用するには、環境変数を適切に宣言する必要があります。通常、これはオペレーティング システムまたはビルド プロセスで環境変数を設定することによって行われます。環境変数を設定したら、${ 変数名 } 構文を使用して application.properties で環境変数を参照できます。

たとえば、次のコード スニペットを考えてみましょう。

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}
ログイン後にコピー

この中でたとえば、環境変数が次のように設定されているとします。

OPENSHIFT_MYSQL_DB_HOST=jdbc:mysql://localhost
OPENSHIFT_MYSQL_DB_PORT=3306
OPENSHIFT_MYSQL_DB_USERNAME=root
OPENSHIFT_MYSQL_DB_PASSWORD=123asd
ログイン後にコピー

これらの環境変数を設定すると、 application.properties ファイルには、適切な値が自動的に設定されます。

もう 1 つのアプローチは、Spring Boot プロファイルを使用して、環境ごとに異なる構成値を設定することです。これは、application-{profile-name}.properties ファイルを作成することによって行われます。ここで、{profile-name} は環境の名前です。たとえば、ローカル環境、Jenkins 環境、OpenShift 環境にそれぞれ application-local.properties、application-jenkins.properties、application-openshift.properties ファイルを作成できます。

これらの各ファイルには、その環境に適切な構成値。たとえば、application-local.properties には次のものが含まれる場合があります。

spring.datasource.url = jdbc:mysql://localhost:3306/nameofDB
spring.datasource.username = root
spring.datasource.password = 123asd
ログイン後にコピー

その後、 --spring.profiles.active コマンドライン引数を使用して、アプリケーションの起動時に使用するプロファイルを指定できます。たとえば、ローカル プロファイルを使用するには、次のコマンドを実行します。

java -jar app.jar --spring.profiles.active=local
ログイン後にコピー

環境変数または Spring Boot プロファイルを使用すると、さまざまな環境でアプリケーションの構成値を設定するための柔軟で保守可能な方法が提供されます。

以上が環境変数と Spring Boot プロファイルを使用して異なる環境の構成を管理する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート