GSON library, which is provided by Google and makes the process of turning Java objects into their
JSON representation (serialization) and JSONs into Java objects (deserialization) very easy.
we are going to create a simple Java class, create an object of it, turn it into a JSON and then turn that JSON back into the java object. We will also learn how to use the @SerializedName annotation to use different keys and variable names.
Links and dependencies:- github.com/google/gson
In Employee.java class file add these lines of codes:-
Employee.java
import com.google.gson.annotations.SerializedName;
public class Employee {
@SerializedName("first_name")
private String mFirstName;
@SerializedName("age")
private int mAge;
@SerializedName("mail")
private String mMail;
public Employee(String firstName, int age, String mail) {
mFirstName = firstName;
mAge = age;
mMail = mail;
}
}
In MainActivity.java class file add these lines codes:-
MainActivity.java
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import com.google.gson.Gson;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Gson gson = new Gson();
/*
Employee employee = new Employee("John", 30, "john@gmail.com");
String json = gson.toJson(employee);
*/
String json = "{\"first_name\":\"John\",\"age\":30,\"mail\":\"john@gmail.com\"}";
Employee employee = gson.fromJson(json, Employee.class);
}
}
In employee.json add these lines of codes:-
{
"age": 30,
"first_name": "John",
"mail": "john@gmail.com"
}
Now after adding these codes Run the project and we will get desired output.

Comments