/ / Erstellen Sie tief verschachtelte JSON mit Rekursion - Java, Json, Rekursion, einfacher Json

Erstellen Sie tief verschachtelte JSON mit Rekursion - Java, Json, Rekursion, Simplejson

Diese JSON ist die Ausgabe, die ich erwarte,

    [{
"text": "a",
"nodes": [{
"text": "aa",
"nodes": [{
"text": "aa1"
}, {
"text": "aa2",
"nodes": [{
"text": "aaa1"
},
{
"text": "aaa2",
"nodes": [{
"text": "aaaa21"
}]
},
{
"text": "aaa3"
}
]
}]
}]
},
{
"text": "b",
"nodes": [{
"text": "bb1"
},
{
"text": "bb2"
}
]
},
{
"text": "c",
"nodes": [{
"text": "cc"
}]
},
{
"text": "d",
"nodes": [{
"text": "dd1",
"nodes": [{
"text": "ddd1"
},
{
"text": "ddd2"
},
{
"text": "ddd3",
"nodes": [{
"text": "ddd31",
"nodes": [{
"text": "ddd32"
}]
}]
}
]
}]
}]

Um also kurz aus der untenstehenden Tabellenstruktur einen JSON-Baum wie oben zu erzeugen, teilen Sie mir bitte einen Java-Code / Algorithmus.

Eine einfache Rekursionsmethode würde mir helfen, oder gibt es dafür eine Standardbibliothek

Bildbeschreibung hier eingeben

Antworten:

0 für die Antwort № 1

Ihr unmittelbares Problem ist, dass Sie rekursiv sindDie Funktion führt die SQL-Abfrage bei jedem Aufruf aus, sodass sie niemals über die erste Ergebniszeile hinausgeht. Daher der Stapelüberlauf. Strukturieren Sie Ihren Code so, dass die Abfrage zu Beginn nur einmal ausgeführt wird. Ich hatte keine Zeit, eine Tabelle zu erstellen, um dies auszuprobieren, aber intuitiv müssen Sie die Funktion verschieben, um direkt vor der "while" -Schleife zu starten.