JSON-Struktur für Liste von Objekten

Lesezeit: 1 Minute

Ich würde gerne wissen, was die richtige Struktur für eine Liste von Objekten in JSON ist.

Wir verwenden JAXB, um die POJOs in JSON zu konvertieren.

Hier ist die Auswahl. Bitte leiten Sie mich an, was richtig ist.

foos: [
             foo:{..},
             foo:{..}
      ]

oder

   foos : [
           {...},
           {...}
          ]

Wenn die erste Struktur richtig ist, was ist die JAXB-Annotation, die ich verwenden sollte, um die Struktur richtig zu machen?

  • “mit JAXB die POJOs in JSON konvertieren” … wie?

    – Skaffmann

    14. Oktober 2010 um 10:12 Uhr

Benutzer-Avatar
Justin Nießner

Das zweite ist fast richtig:

{
    "foos" : [{
        "prop1":"value1",
        "prop2":"value2"
    }, {
        "prop1":"value3", 
        "prop2":"value4"
    }]
}

  • Dies wird auf jsonlint nicht validiert 🙁 Ich bin versucht zu glauben, dass jsonlint falsch ist 😐

    – Ramanpreet Singh

    1. April 2016 um 18:07 Uhr


  • @RamanpreetSingh – Wenn Sie über validieren jsonlintdann müssen Sie auch Anführungszeichen hinzufügen foos auf höchstem Niveau.

    – Justin Nießner

    1. April 2016 um 19:55 Uhr

  • Ich habe Anführungszeichen und geschweifte Klammern auf der obersten Ebene hinzugefügt und es funktioniert. Vielen Dank!

    – Ramanpreet Singh

    4. April 2016 um 12:26 Uhr

Benutzer-Avatar
BalusC

Das erste Beispiel aus Ihrer Frage,

foos: [
    foo: { ... },
    foo: { ... }
]

hat eine ungültige Syntax. Sie können keine Objekteigenschaften in einem einfachen Array haben.

Das zweite Beispiel aus Ihrer Frage,

foos: [
    { ... },
    { ... }
]

ist richtig, obwohl es nicht so ist strikt JSON. Es ist ein entspannt Form von JSON, bei der Anführungszeichen in Zeichenfolgenschlüsseln weggelassen werden.

Das Folgende ist das Richtige, wenn Sie gehorchen möchten strikt JSON:

"foos": [
    { ... },
    { ... }
]

Dieses Tutorial von Patrick Hunlockkann beim Erlernen von JSON und helfen Diese Seite kann helfen, JSON zu validieren.

Wie andere bereits erwähnt haben, war Justins Antwort nah dran, aber nicht ganz richtig. Ich habe dies mit Visual Studio “Paste JSON as C# Classes” getestet.

{
    "foos" : [
        {
            "prop1":"value1",
            "prop2":"value2"
        },
        {
            "prop1":"value3", 
            "prop2":"value4"
        }
    ]
}

1217280cookie-checkJSON-Struktur für Liste von Objekten

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy