Using Custom DateFormat

In this post, under GSON, I will explain how to use custom date format when serializing Java object containing date information to json format.

We can change this format globally, globally meaning the custom format will be applied to all objects that are serialized using Gson instance, created using the custom date format.

Below is an example

Main Code


1  import java.text.DateFormat;
2  import java.util.Date;
3  
4  import com.google.gson.Gson;
5  import com.google.gson.GsonBuilder;
6  
7  public class GsonDemo6 {
8   public static void main(String[] args) {
9       GsonBuilder gsonBuilder = new GsonBuilder();
10      Gson gson = gsonBuilder.setDateFormat(DateFormat.SHORT).create();
11      Student student = new Student();
12      student.setId(1);
13      student.setName("name1");
14      student.setRollnum(100);
15      student.setDate(new Date());
16      String result = gson.toJson(student);
17      System.out.println(result);
18  }
19 }

At line 9, we create a GsonBuilder instance which will help in creating an instance of Gson class.

At line 10, we set the date format by calling “setDateFormat” method and then will call “create” method. This will create a Gson instance with specified date format.

The argument to the “setDateFormat” method must be one of the predefined constants in the java.text.DateFormat class.

From line 11 to 15, we create a Student instance and set its properties.

At line 16, we serialize the student object to String in JSON format and print its result at line 17.

Below is the output

Output

{“id”:1,”name”:”name1″,”rollnum”:100,”date”:”Aug 31, 2019 7:53:22 PM”}

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s