1
我想將具有嵌套對象的Java屬性文件轉換爲JSON。我跟着一個例子,我發現here,但我不能得到它的工作。使用Jackson將JSON屬性文件轉換爲JSON
例如,給定:
objectA.version=1.0
objectA.hostname=192.168.0.11
objectA.port=9989
objectB.hostname=10.0.2.15
objectB.port=9998
我想:
{
「objectA」 : {
"version」 : "1.0"
"host」 : 「192.168.0.11」,
"port" : 9989
},
「objectB」 : {
"host」 : 「10.0.2.15」,
"port" : 9998
}
}
這是我到目前爲止有:
static class Endpoint
{
@JsonProperty("objectA")
public ObjectA objectA;
@JsonProperty("objectB")
public ObjectB objectB;
}
static class ObjectA
{
public String hostname;
public String port;
public String version;
}
static class ObjectB
{
public String hostname;
public String port;
}
try (InputStream input = getClass().getClassLoader().getResourceAsStream("file.properties"))
{
JavaPropsMapper mapper = new JavaPropsMapper();
Endpoint host = mapper.readValue(input, Endpoint.class);
String asText = mapper.writeValueAsString(host);
System.out.println(asText);
}
輸出看起來是這樣的:
objectA.version=1.0
objectA.hostname=192.168.0.11
objectA.port=9989
objectB.hostname=10.0.2.15
objectB.port=9998
如果您只是想打印帶括號的屬性文件的JSON結構,而不是,可以使用ObjectMapper。看到這個參考:https://www.mkyong.com/java/how-to-enable-pretty-print-json-output-jackson/ – suguspnk
@suguspnk這不是我想做的。我想用一個嵌套(不平坦)的結構將屬性文件轉換爲JSON。 – ksl
現在我很困惑。 @。@ – suguspnk