2017-12-05 4 views
1

Ich habe einfache JSON-Struktur mit bekannten Feldern (A und B zum Beispiel als String eingegeben) und einige unbekannte Felder (foo und bar, und vielleicht etwas anderes, oder keine von ihnen, Typ unbekannt).Parse JSON mit gemischten bekannten/unbekannten Feldern in JAVA

[ 
    {"A": "Value for A", B: "Value for B", "foo": "foo"}, 
    {"A": "Value for A", B: "Value for B", "bar": 13}, 
    {"A": "Value for A", B: "Value for B", "foo": "foo", "val": true} 
] 

Ich muss diesen JSON zu POJO analysieren. Jackson erlaubt, diesen JSON zu JsonNode zu analysieren, aber JsonNode isst zu viel Speicher auf riesiger Datenmenge. Gibt es eine Lösung, das zu tun? Ich brauche Instanz der Klasse wie folgt zu erhalten:

class Simple 
{ 
    public String A; 
    public String B; 
    public HashMap others; 
} 
+0

Darf Sie Ihre JSON-Struktur ändern? –

+0

Ich bekomme diese JSON als String, also ja, wenn es effektiv sein kann. JSON ist ungefähr 1 bis 5 MB –

Antwort

1

Sie POJO mit @JsonAnySetter Methode Anmerkung verwenden können. Und Sie können tatsächlich sogar Berechnungen/Optimierungen in dieser Methode durchführen, wenn Sie sie brauchen.