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

Spring Boot 2. x将YAML列表绑定到类问题中

闾丘才哲
2023-03-14

因此,我一直在尝试将我的YAML属性中的list属性添加到我创建的类中,不知何故,list绑定只能从YAML中识别逗号分隔的值。

鉴于这门课

@Getter
@Configuration
@ConfigurationProperties
@PropertySource("classpath:test.yml")
public class SomeProperty {
    final List<String> someList = new ArrayList<>();
}

还有这个yaml文件

someList:
  - a
  - b

如果我在某处autowirethe的某个属性并打印的某个列表,它将返回一个空列表,但如果我将yaml文件更改为此

someList: a,b

然后绑定工作并返回一个包含值的数组列表。绑定有什么问题?

共有1个答案

丁淇
2023-03-14

刚刚发现PropertySource只能识别*。属性文件,这就是它无法识别yaml列表的原因。

 类似资料:
  • 升级到Spring Boot 2x后,我在绑定一些列表时遇到了问题。代码在Spring 1中起作用。现在它在启动时抛出一个绑定错误。这是我的申请表。yml。。。 这是我的组件类... 这是嵌套对象。。。 当我试图逃跑时,我得到了... 申请无法启动 说明: 无法绑定“aws”下的属性。地理映射到java。util。列表: 行动: 更新应用程序的配置 还有其他人遇到过同样的问题吗?解决方案?建议?

  • 我知道如果我把属性放在。yml文件如下: 我可以将它们绑定到java。util。列出或设置类型。如果yaml属性如下: 我可以把它绑在地图上。我想知道是否可以将yml属性绑定到映射

  • 我正在尝试使用@ConfigurationProperties注释将对象列表绑定到实体类。Spring Boot框架似乎忽略了这个注释,实际上它什么都不做。 这是我的申请表。yml属性文件: 这是我的实体类: 绑定非常简单: 在应用程序的某个地方,我正在测试该绑定,比如说我在API中创建了endpoint来测试该绑定,即我的控制器调用一个只打印列表中所有对象的方法: 预期: 启动后,Applica

  • 当我试图将一个列表元素绑定到JavaFX标签时,我遇到了一个问题。如果项目不在列表中,我没有问题。 垃圾收集器是这个问题的原因吗? Controller.class:(fxml文件的控制器) Context.java:(刷新变量的类) 要刷新标签,我使用

  • 我正在将一个项目升级到Spring Boot 2.2.6。在编译错误之后,将yaml属性数据绑定到对象列表- **请注意,该项目是在我使用的以前版本的spring boot(2.2.1)中编译的** JAVAlang.IllegalStateException:未能加载ApplicationContext,原因是:org。springframework。靴子上下文属性。ConfigurationP

  • 我有一个返回列表的函数。我试图在drools when子句中调用此函数,并将其绑定到名为l1的变量。如果像这样绑定变量,则子句不会执行。然而,如果我以类似的方式绑定映射,则执行then子句中的语句。我正在使用最新版本的drools。 这是代码 这里规则'test1'执行并打印值。但是我没有看到规则'test2'的任何输出。 任何帮助都将不胜感激。