Maven dependency -
<!-- https://mvnrepository.com/artifact/com.google.code.gson/gson -->
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.5</version>
</dependency>
|
If you are beginner don't worry learn how to Create new Maven project - In 2 minutes
How to convert JSON array to List using com.google.gson.Gson in java
package com.ankit.json;
import java.util.List;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
public class ConvertJSONArrayToList {
public static void main(String[] args) {
Gson googleGson = new Gson();
String jsonString = "["
//Employee 1
+ "{\"empId\":11,\"name\":\"ankit\",\""
+ "address\":[\"Paris\",\"London\"],\"birthDate\":\"Sep 2, 2018 12:59:30 PM\"}, "
//Employee 2
+ "{\"empId\":12,\"name\":\"Naina\",\""
+ "address\":[\"Munich\",\"Delhi\"],\"birthDate\":\"Sep 1, 2018 00:01:30 AM\"}"
+ "]";
// How to convert JSON array to List in java
List<Employee> list = googleGson.fromJson(jsonString, new TypeToken<List<Employee>>() {
}.getType());
//Iterate on List
list.forEach(x -> System.out.println(x));
}
}
// output
/*
Employee [empId=11, name=ankit, address=[Paris, London], birthDate=Sun Sep 02 12:59:30 IST 2018]
Employee [empId=12, name=Naina, address=[Munich, Delhi], birthDate=Sat Sep 01 00:01:30 IST 2018]
*/
|
Employee class
package com.ankit.json;
import java.util.Date;
import java.util.List;
public class Employee {
//Fields
private int empId;
private String name;
private List<String> address;
private Date birthDate;
public Employee() {
super();
}
public Employee(int empId, String name, List<String> address, Date birthDate) {
super();
this.empId = empId;
this.name = name;
this.address = address;
this.birthDate=birthDate;
}
@Override
public String toString() {
return "Employee [empId=" + empId + ", name=" + name + ", address=" + address + ", birthDate=" + birthDate + "]";
}
//Setter and getters
public int getEmpId() {
return empId;
}
public void setEmpId(int empId) {
this.empId = empId;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public List<String> getAddress() {
return address;
}
public void setAddress(List<String> address) {
this.address = address;
}
public Date getBirthDate() {
return birthDate;
}
public void setBirthDate(Date birthDate) {
this.birthDate = birthDate;
}
}
|
Related links >
1. Jackson JSON -
We can use Jackson api for for processing JSON in java.
Jackson JSON examples
2. Java provides API (JSR 353) for Processing JSON (JSR 353).
It provides -
- Object Model API
- Streaming API
Java API for JSON processing examples >