第 9 章 设置自定义配置源
默认情况下,您的 Quarkus 应用从项目的 src/main/resources 子目录中的 application.properties 文件中读取属性。但是,由于 Quarkus 支持 MicroProfile Config,您也可以从其他来源加载应用的配置。您可以通过提供实现 org.eclipse.microprofile.config.spi.ConfigSource 和 org.eclipse.microprofile.config ,为您的配置的值引入自定义配置源。此流程演示了如何在 Quarkus 项目中实施自定义配置源。
.spi.ConfigSource 接口的类
前提条件
-
具有 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