如何将对象数组转换为Spring application.properties



我使用Jackson来转换对象,包括数组对象到应用程序。属性文件,但转换数组对象时的结果看起来不像我预期的那样好。这是我的代码:

JSONSerializer serializer = new JSONSerializer().rootName("application").prettyPrint(false);
String json = serializer.serialize(configDto.getValue());
ObjectMapper om = new ObjectMapper();
JsonNode tree = om.readTree(json);
Properties props;
JavaPropsMapper mapper = new JavaPropsMapper();
props = mapper.writeValueAsProperties(tree);
props.store(new FileOutputStream(file), "");
输入:

{
"nation": [
{
"key": "France"
},
{
"key": "Spain"
},
{
"key": "England"
}
],
"movie": "Avatar 2"
}

结果:

application.nation.1 = France
application.nation.2 = Spain
application.nation.3 = England
application.movie = Avatar 2

结果期望:

application.nation[1] = France
application.nation[2] = Spain
application.nation[3] = England
application.movie = Avatar 2

我如何转换数据像我期望的结果?对不起,我的英语不好!谢谢!

可能使您的nation在json数组。对不起,我还没有测试过。

{
"nation": ["France", "Spain", "England"],
"movie": "Avatar 2"
}

最新更新