Quote Originariamente inviata da fermat Visualizza il messaggio
ma ogni risorsa ha un formato diverso dall'altro (ad esempio un'estrazione di clienti è differente da una estrazioni di articoli)
io vorrei crearmi un piccolo programma che dato in input il json, lo trasformi in excel, in moda da distribuirlo più facilmente ai colleghi

quello che mi manca è come fare il parsing del json in maiera dinamica, senza sapere a priori come è fatto.
è possibile?
Immagino che vuoi fare una soluzione "generalizzata", per evitare di dover definire N (svariate) classi per il binding. Perché anche in questo caso, nessuno vieterebbe di applicare il data binding. Anche se sono svariate risorse, ciascuna ha un suo formato ben preciso ... non credo che cambi per caso .. così .. dall'oggi al domani.

Se l'obiettivo però è quello di ottenere come risultato una "griglia" di dati, bisogna vedere come è la struttura del JSON. Deve essere molto lineare e ben strutturata. Non può avere particolarità, sottorami extra o cose del genere .... altrimenti come estrai le cose?

Spiego meglio, se la struttura del JSON fosse:

codice:
un array
    N oggetti, tutti con lo stesso formato
        M campi

Questo è quanto di più vicino ad una tabella, o "griglia" di dati.

Comunque bisogna anche vedere quale libreria JSON intendi usare. La ben nota Jackson offre ben 3 modalità di parsing:
- la Streaming API, a basso livello. Ovvero estrai tu i "token" uno dopo l'altro e devi dedurre tu se si tratta di un campo String, un numero, l'inizio di un array, ecc..
- Il Tree Model, ovvero Jackson ti fornisce una rappresentazione ad "albero" in memoria di tutto il JSON e puoi "navigarci" dentro tu come vuoi.
- Il Data Binding che permette la mappatura tra il JSON e classi Java "bean".