3.2. MicroProfile 配置配置


3.2.1. 在 ConfigSource 管理资源中添加属性

您可以直接将属性存储在 config-source 子系统中,作为管理资源。

流程

  • 创建 ConfigSource 并添加属性:

    /subsystem=microprofile-config-smallrye/config-source=props:add(properties={"name" = "jim"})
    Copy to Clipboard Toggle word wrap

3.2.2. 将目录配置为 ConfigSources

当属性作为文件存储在目录中时,file-name 是属性的名称,文件内容是 属性的值。

流程

  1. 创建一个要存储文件的目录:

    $ mkdir -p ~/config/prop-files/
    Copy to Clipboard Toggle word wrap
  2. 进入该目录:

    $ cd ~/config/prop-files/
    Copy to Clipboard Toggle word wrap
  3. 创建 文件名 来存储属性名为 的值:

    $ touch name
    Copy to Clipboard Toggle word wrap
  4. 将属性值添加到文件中:

    $ echo "jim" > name
    Copy to Clipboard Toggle word wrap
  5. 创建一个 ConfigSource,其中文件名是属性,文件内容为属性值:

    /subsystem=microprofile-config-smallrye/config-source=file-props:add(dir={path=~/config/prop-files})
    Copy to Clipboard Toggle word wrap

    这会生成以下 XML 配置:

    <subsystem xmlns="urn:wildfly:microprofile-config-smallrye:1.0">
        <config-source name="file-props">
            <dir path="/etc/config/prop-files"/>
        </config-source>
    </subsystem>
    Copy to Clipboard Toggle word wrap

3.2.3. 从 ConfigSource 类获取 ConfigSource

您可以创建并配置自定义 org.eclipse.microprofile.config.spi.ConfigSource 实施类,以便为配置值提供源。

流程

  • 以下管理 CLI 命令为名为 org.example.MyConfigSource 的实施类创建一个 ConfigSource,它由名为 org.example 的 JBoss 模块提供。

    如果要使用 org.example 模块中的 ConfigSource,请将 < module name="org.eclipse.microprofile.config.api"/> 依赖项添加到 path/to/org/example/main/module.xml 文件。

    /subsystem=microprofile-config-smallrye/config-source=my-config-source:add(class={name=org.example.MyConfigSource, module=org.example})
    Copy to Clipboard Toggle word wrap

    此命令生成 microprofile-config-smallrye 子系统的以下 XML 配置:

    <subsystem xmlns="urn:wildfly:microprofile-config-smallrye:1.0">
        <config-source name="my-config-source">
            <class name="org.example.MyConfigSource" module="org.example"/>
        </config-source>
    </subsystem>
    Copy to Clipboard Toggle word wrap

自定义 org.eclipse.microprofile.config.spi.ConfigSource 实施类提供的属性可供任何 JBoss EAP 部署使用。

您可以创建并配置自定义 org.eclipse.microprofile.config.spi.ConfigSourceProvider 实现类,用于注册多个 ConfigSource 实例的实施。

流程

  • 创建 config-source-provider

    /subsystem=microprofile-config-smallrye/config-source-provider=my-config-source-provider:add(class={name=org.example.MyConfigSourceProvider, module=org.example})
    Copy to Clipboard Toggle word wrap

    命令为名为 org.example.MyConfigSourceProvider 的实施类创建一个名为 org.example.MyConfigSourceProviderconfig-source-provider,它由名为 org.example 的 JBoss 模块提供。

    如果要使用 org.example 模块中的 config-source-provider,请将 < module name="org.eclipse.microprofile.config.api"/> 依赖项添加到 path/to/org/example/main/module.xml 文件。

    此命令生成 microprofile-config-smallrye 子系统的以下 XML 配置:

    <subsystem xmlns="urn:wildfly:microprofile-config-smallrye:1.0">
        <config-source-provider name="my-config-source-provider">
             <class name="org.example.MyConfigSourceProvider" module="org.example"/>
        </config-source-provider>
    </subsystem>
    Copy to Clipboard Toggle word wrap

ConfigSourceProvider 实施提供的属性可供任何 JBoss EAP 部署使用。

其他资源

  • 有关如何向 JBoss EAP 服务器添加全局模块的详情,请参考 JBoss EAP 配置指南中的 定义 全局模块。
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部