gpt4 book ai didi

spring-boot - 我无法在 spring boot 中从 yaml 注入(inject) Map

转载 作者:行者123 更新时间:2023-12-05 07:26:00 27 4
gpt4 key购买 nike

我在 application.yaml 中有这个值

import-charge-fields:
4: billDate
1001: validUntil
7: totalAmount
24: purpose

在服务中我尝试注入(inject)它:

    @Value("${import-charge-fields}")
private Map<String, String> fields;

但我得到异常:

Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder 'import-charge-fields' in value "${import-charge-fields}"

我试试这个:

charge:
hz: 123
fields:
4: billDate
1001: validUntil
7: totalAmount
24: purpose

@Getter
@Setter
@Component
@ConfigurationProperties(prefix = "charge")
public class ChargeFields {
private String hz;
private Map<String, String> fields;
}

@Value("${charge.hz}")
private String hz;

@Value("${charge.fields}")
private Map<String, String> fields;

它不起作用

最佳答案

我遇到了同样的问题,经过多次尝试,我的问题出在 Set 方法中。

使用@EnableConfigurationProperties 你必须实现 setFields() 方法。

关于spring-boot - 我无法在 spring boot 中从 yaml 注入(inject) Map<String, String>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54589352/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com