第9章 カスタム設定ソースの設定
デフォルトで、Quarkus アプリケーションはプロジェクトの src/main/resources サブディレクトリー内の application.properties ファイルからプロパティーを読み取ります。ただし、Quarkus は MicroProfile 設定をサポートしているため、他のソースからアプリケーションの設定を読み込むこともできます。org.eclipse.microprofile.config.spi.ConfigSource および org.eclipse.microprofile.config.spi.ConfigSourceProvider インターフェイスを実装するクラスを提供することで、設定した値にカスタム設定ソースを導入できます。以下の手順では、Quarkus プロジェクトにカスタム設定ソースを実装する方法を説明します。
前提条件
-
Quarkus
config-quickstartプロジェクトがある。
手順
プロジェクト内に
ExampleConfigSourceProvider.javaファイルを作成し、以下のインポートを追加します。src/main/java/org/acme/config/ExampleConfigSourceProvider.java
Copy to Clipboard Copied! Toggle word wrap Toggle overflow org.eclipse.microprofile.config.spi.ConfigSourceProviderインターフェイスを実装するクラスを作成します。そのgetConfigSourcesメソッドを上書きし、ConfigSourceオブジェクトの一覧を返します。以下の例は、
ConfigSourceProviderおよびConfigSourceインターフェイスのカスタム実装を示しています。src/main/java/org/acme/config/ExampleConfigSourceProvider.java
Copy to Clipboard Copied! Toggle word wrap Toggle overflow プロジェクトの
src/main/resources/META-INF/services/サブディレクトリーにorg.eclipse.microprofile.config.spi.ConfigSourceProviderという名前のファイルを作成し、作成したファイルにConfigSourceProviderを実装するクラスの完全修飾名をファイルに入力します。src/main/resources/META-INF/services/org.eclipse.microprofile.config.spi.ConfigSourceProvider
org.acme.config.ExampleConfigSourceProvider
org.acme.config.ExampleConfigSourceProviderCopy to Clipboard Copied! Toggle word wrap Toggle overflow アプリケーションをコンパイルして起動する際に、作成した
ConfigSourceProviderが登録およびインストールされていることを確認するには、この手順を実行する必要があります。以下のコマンドを入力して、開発モードでアプリケーションをコンパイルして起動します。
./mvnw quarkus:dev
./mvnw quarkus:devCopy to Clipboard Copied! Toggle word wrap Toggle overflow /greetingエンドポイントが想定されるメッセージを返すことを確認するには、新しいターミナルウィンドウに以下のコマンドを入力します。curl http://localhost:8080/greeting
curl http://localhost:8080/greetingCopy to Clipboard Copied! Toggle word wrap Toggle overflow アプリケーションがカスタム設定を正しく読み取ると、以下の応答が返されます。
hello quarkus!
hello quarkus!Copy to Clipboard Copied! Toggle word wrap Toggle overflow