Parsing JSON in Java con Moshi
Moshi è una libreria per Java e Kotlin per JSON, ottimizzata per essere usata anche in ambito mobile.
In questo articolo vediamo un esempio in Java.
Per installarla possiamo aggiungere questa dipendenza a Maven:
<dependency>
<groupId>com.squareup.moshi</groupId>
<artifactId>moshi</artifactId>
<version>1.15.1</version>
</dependency>
Prima di tutto creiamo una classe che rappresenti i nostri dati:
public class Libro {
public String titolo;
public String autore;
public double prezzo;
}
Qui sotto un esempio di codice:
import com.squareup.moshi.Moshi;
import com.squareup.moshi.JsonAdapter;
import com.squareup.moshi.Types;
import java.io.IOException;
import java.lang.reflect.Type;
import java.util.List;
public class Main {
public static void main(String[] args) {
String json = "[{\"titolo\":\"IT\",\"autore\":\"Stephen King\",\"prezzo\":30}, {\"titolo\":\"Sahara\",\"autore\":\"Clive Cussler\",\"prezzo\":25.5}]";
Moshi moshi = new Moshi.Builder().build();
Type type = Types.newParameterizedType(List.class, Libro.class);
JsonAdapter<List<Libro>> jsonAdapter = moshi.adapter(type);
try {
List<Libro> list = jsonAdapter.fromJson(json);
for (Libro libro : list) {
System.out.println(libro.titolo + " - " + libro.autore + " - " + libro.prezzo);
}
} catch (IOException e) {
System.out.println(e.getMessage());
}
}
}
Per fare un esempio semplice il JSON l'ho messo dentro ad una stringa.
A voi il compito di integrarlo con dati remoti.
Enjoy!
java maven json moshi
Commentami!