当前位置: 首页 > 知识库问答 >
问题:

Spring条件yaml属性值

朱华皓
2023-03-14
profiles.active: rabbit-${CLUSTER_ENV}, mongo-${CLUSTER_ENV} ...
if(CLUSTER_ENV == "local") {
   return "dev";
} else {
   return CLUSTER_ENV;
}

共有1个答案

仲孙雅达
2023-03-14

它看起来不漂亮,但您可以使用以下内容:

 #this can be added on startup
mykey: key1

#a map with your condition
mymap:
  key1: val1
  key2: val2

#your value based on the condition
conditional: con-${mymap.${mykey}}

问候,WiPU

根据备注更新:

 #this can be added on startup as variable
mykey: local

#a map with your condition
mymap:
  local: dev
  xyz: test

# your value based on the condition or the key as fallback if the key is not 
# present in mymap.
conditional: con-${mymap.${mykey}:${mykey}}
 类似资料:
  • 我使用自动配置(仅通过注释)运行Spring启动和kafka,并在.yaml文件中定义了道具,即: 它工作得很好,spring maps即字段group-id正确。 但是当我尝试使用相同的yaml文件手动配置Kafka(使用消费者工厂和消费者配置)时,我遇到了问题。在类中,消费者配置Kafka属性以 命名。在名称中,而不是 _ 即: 所以我不能把它们加载到map中,然后把map传递给Consume

  • 这是我的项目结构 我在应用程序中有这个 在我的endpoint中,我有以下内容 在任何函数中,我都可以访问类似于的内容,它工作正常,但对于文件类型,它甚至没有编译,我收到以下错误: 创建名为'配置终结点'的bean时出错:注入自动生成的依赖项失败;嵌套异常是java.lang.IllegalArgumentExc0019:无法解决占位符'document.templates.filetypes'中

  • 我用Spring靴。我想使用YAML而不是属性来编写配置。 问题是应用程序继续使用application.properties文件,如果我删除它,就不会加载任何配置。 有人能帮帮我吗?这是我的主要档案 这是我的

  • 主要内容:节点锚点,节点标签,节点内容每个表示节点包括两个主要特征,称为锚和标记。可以使用节点内容指定节点属性,从字符流中省略。 节点表示的基本示例如下 - 节点锚点 属性表示将来参考的节点。 节点中YAML表示的字符流用符号表示。 YAML处理器不需要保留锚名称以及其中包含的表示细节。以下代码解释了这一点 - 锚节点生成的YAML输出如下所示 - 节点标签 属性表示完全定义节点的本机数据结构的类型。 标签用()指示符表示。 标签被视

  • 是一个代表SQL语句中的条件语句的接口。这是一个接口,这样其他类型的条件可以使用,并且允许最大的灵活性,以满足您的需求。 例如,写在原始的SQLite: 建议我们的查询从Model的属性中创造条件。 @Table(database = TestDatabase.class) public class TestModel3 { @PrimaryKey String name;

  • 这是YAML文件中的Kafka Producer属性。当我启用SSL时,我的kafka生产者无法工作。它无法识别经纪人的主题。但当我使用PLAINTEXT时,我的Kafka制作人工作正常。我是否缺少SSL配置的内容。 PS:对于SSL和PLAINTEXT,Bootsrap服务器是不同的。 这是我的Kafka制作人配置 这是在Spring boot控制台上为kafka prodcuer返回的值