Using TypeToken, you can convert a json to typed array list.
Example
Type type = new TypeToken<List<Employee>>() {}.getType();
List<Employee> deserializedEmps = gson.fromJson(json, type);
package com.sample.app.model;
public class Employee {
private int id;
private String firstName;
private String lastName;
public Employee() {
}
public Employee(int id, String firstName, String lastName) {
super();
this.id = id;
this.firstName = firstName;
this.lastName = lastName;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
@Override
public String toString() {
return "Employee [id=" + id + ", firstName=" + firstName + ", lastName=" + lastName + "]";
}
}
App.java
package com.sample.app;
import java.util.Arrays;
import java.util.List;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.sample.app.model.Employee;
import java.lang.reflect.Type;
import com.google.gson.reflect.TypeToken;
public class App {
public static void main(String args[]) throws ClassNotFoundException {
Employee emp1 = new Employee(1, "Ravindra", "Gidugu");
Employee emp2 = new Employee(2, "Rahim", "Khan");
Employee emp3 = new Employee(3, "Joel", "Chelli");
Employee emp4 = new Employee(4, "Ram", "Gurram");
List<Employee> emps = Arrays.asList(emp1, emp2, emp3, emp4);
Gson gson = new GsonBuilder().setPrettyPrinting().create();
String json = gson.toJson(emps);
Type type = new TypeToken<List<Employee>>() {}.getType();
List<Employee> deserializedEmps = gson.fromJson(json, type);
for (Employee emp : deserializedEmps) {
System.out.println(emp);
}
}
}
Output
Employee [id=1, firstName=Ravindra, lastName=Gidugu]
Employee [id=2, firstName=Rahim, lastName=Khan]
Employee [id=3, firstName=Joel, lastName=Chelli]
Employee [id=4, firstName=Ram, lastName=Gurram]
No comments:
Post a Comment