我要求在yml属性中使用Map<String, Object>
,但允许在地图中输入带有空值的键。
例如:
application.yml
....
init-services:
sample-service-discovery:
port: 8761
profiles: dev,prod
sample-config-server:
port: 8888
profiles: dev, test
sample-activation-service:
some-other-service:
port: 1234
....
init-services
是Map<String, ServiceProperties>
。
ServiceProperties
只是一个Integer port, List<String> profiles
的POJO。
前两个条目的编译很好,但在sample-activation-service
我得到Cannot convert value of type 'java.lang.String' to required type PathProperties$ServiceProperties
例外。
问题:有没有办法允许在.yml映射中只有一个键,但null值为空?我需要稍后迭代密钥,即使它们的值为空。
答案 0 :(得分:1)
我设法通过向'Address10.123.56.25', '789.356.441.561' '192.168.1.2.3'
添加构造函数来解决此问题,该构造函数将String作为参数,并调用默认构造函数。
ServiceProperties