Wenn ich mit Java nach JSON serialisieren möchte, verwende ich häufig Jackson, weil JSON-B nicht leistungsfähig genug ist, aber ich vergesse immer, wie man es schreibt. Machen Sie sich also eine Notiz.
Ein Muster, das ohne Formatierung für den Datenaustausch serialisiert wird. Normalerweise das.
var item = Map.of("parent", Map.of("child", List.of("a", "b", "c")));
var json = new ObjectMapper().writeValueAsString(item);
Ergebnis
{"parent":{"child":["a","b","c"]}}
Wenn Sie für die Bildschirmausgabe oder Konfigurationsdatei formatieren möchten, verwenden Sie INDENT_OUTPUT
var item = Map.of("parent", Map.of("child", List.of("a", "b", "c")));
var mapper = new ObjectMapper();
mapper.enable(SerializationFeature.INDENT_OUTPUT);
var json = mapper.writeValueAsString(item);
Ergebnis
{
"parent" : {
"child" : [ "a", "b", "c" ]
}
}
Wenn Sie ein Array von Elementen mit Zeilenumbrüchen anzeigen möchten. Denn wenn das Element lang ist. Verwenden Sie PrettyPrinter und SYSTEM_LINEFEED_INSTANCE.
var item = Map.of("parent", Map.of("child", List.of("a", "b", "c")));
var printer = new DefaultPrettyPrinter();
printer.indentArraysWith(DefaultIndenter.SYSTEM_LINEFEED_INSTANCE);
var json = new ObjectMapper().writer(printer).writeValueAsString(item);
Ergebnis
{
"parent" : {
"child" : [
"a",
"b",
"c"
]
}
}
Recommended Posts