我有这个 application.yml 文件
messages:
first-journey-messages:
- key: fullName-required
value: This field is required.
- key: fullName-validation
value: Please enter a valid full name.
- key: technical-error
value: Unfortunately we are having technical issues, please try again later.
second-journey-messages:
- key: technical-error
value: "<p class='heading-bold'>Sorry, something went wrong </p><p>We encountered a technical error. Please try again. If you continue to experience difficulties, please call us on 0123456 and an agent will be happy to assist you.</p>"
- key: download-technical-error
value: "<p class='heading-bold'>Sorry, something went wrong </p><p>Unable to download document at this moment. Please try again later.</p>"
third-journey-messages:
- key: home-url
value: /app/home
- key: services-url
value: /app/services
我想使用Map
注释阅读@Value
对象下面的上述配置。
@Value("${messages}")
private Map<String, List<MessageEntry>> messagesMap = new HashMap<>();
POJO: MessageEntry
@Data
@AllArgsConstructor
public class MessageEntry implements Serializable {
private String key;
private String value;
}
当我尝试读取配置时,我得到null
。
messagesMap.get("second-journey-messages")
有人可以帮助我识别我在做什么错误吗?
或者,如何将上面的配置读取为Map<String, List<MessageEntry>>
类型的对象?
注意:我在 lombok
中使用 spring boot