2010-10-12 15 views
30

Mi piacerebbe sapere, qual è la struttura giusta per un elenco di oggetti in JSON.Struttura JSON per elenco di oggetti

Stiamo utilizzando JAXB per convertire i POJO in JSON.

Ecco le scelte, per favore dirigimi ciò che è giusto.

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

o

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

Se la prima struttura è giusto, ciò che è l'annotazione JAXB dovrei usare per ottenere la giusta struttura.

+1

"usando JAXB per convertire i POJO in JSON" .... come? – skaffman

risposta

23

Il primo è una sintassi non valida. Non è possibile avere proprietà oggetto all'interno di un array semplice. Il secondo ha ragione anche se non è rigoroso JSON. È una forma rilassata in cui le virgolette nelle chiavi di stringa vengono omesse.

This tutorial by Patrick Hunlock, può aiutare a conoscere JSON e this site può aiutare a convalidare JSON.

39

La seconda è corretta:

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

Questo non è valido su jsonlint :( Sono tentato di pensare che jsonlint sia sbagliato però: - | –

+2

@RamanpreetSingh - Se stai convalidando tramite 'jsonlint', dovrai aggiungere anche virgolette su' foos' sul livello superiore –

+0

Ho aggiunto citazioni e parentesi graffe al livello superiore e funziona. Grazie! –

9

Come altri hanno detto, la risposta di Justin era vicino, ma non del tutto giusto. Ho provato questo usando Visual Studio "Paste JSON come C# Classes"

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