How to Parse JSON to/from Java Object using Boon JSON Parser

In this Boon JSON Parser tutorial, we will learn how to Convert JSON to Java object and Convert Java Object to JSON again using Boon API.

Folder Structure:

Boon JSON Parser

    1. Create a new Java Project  BoonJSONTutorial” and create a package for our src files com.javainterviewpoint
    2. Add the required libraries to the build path. Java Build Path ->Libraries ->Add External JARs and add the below jars.

boon-0.34.jar

if you are running on maven add the below dependency to your pom.xml

 <dependency>
   <groupId>io.fastjson</groupId>
   <artifactId>boon</artifactId>
   <version>0.34</version>
 </dependency>
  1. Create the Java classes Employee.java, JSONToObject.java, ObjectToJSON.java and MapToJSON.java under  com.javainterviewpoint folder.

Boon JSON Parser

Employee.java

Employee class is a simple POJO, for holding the details of the Employee.

package com.javainterviewpoint;

public class Employee
{
    private String name;
    private String department;
    
    public Employee()
    {
        super();
    }

    public Employee(String name, String department)
    {
        super();
        this.name = name;
        this.department = department;
    }
    
    public String getName()
    {
        return name;
    }
    public void setName(String name)
    {
        this.name = name;
    }
    public String getDepartment()
    {
        return department;
    }
    public void setDepartment(String department)
    {
        this.department = department;
    }
}

Parse JSON to Java object

package com.javainterviewpoint;

import org.boon.json.JsonFactory;
import org.boon.json.ObjectMapper;

public class JSONToObject
{
    public static void main(String[] args)
    {
        //JSON String
        String jsonString = "{\"name\":\"Javainterviewpoint\",\"department\":\"Computer\"}";
        
        //create ObjectMapper object
        ObjectMapper mapper = JsonFactory.create();
        
        //Mapping json to employee object
        Employee employee = mapper.fromJson(jsonString, Employee.class);
        
        //Print the Employee Details
        System.out.println("** Employee Details **");
        System.out.println("Employee Name : "+employee.getName());
        System.out.println("Employee Dept : "+employee.getDepartment());
    }
}
  • Create a new ObjectMapper object, it helps us mapping the JSON data with the POJO
ObjectMapper mapper = JsonFactory.create();
  • fromJson() method maps the jsonString to employee object.
Employee employee = mapper.fromJson(jsonString, Employee.class);
  • Finally print the Employee details
        System.out.println("** Employee Details **");
        System.out.println("Employee Name : "+employee.getName());
        System.out.println("Employee Dept : "+employee.getDepartment());

Output : 

** Employee Details **
Employee Name : Javainterviewpoint
Employee Dept : Computer

Parse Java Object to JSON

package com.javainterviewpoint;

import org.boon.json.JsonFactory;
import org.boon.json.ObjectMapper;

public class ObjectToJSON
{
    public static void main(String[] args)
    {
        //Create employee object and set values to its properties
        Employee employee = new Employee();
        employee.setName("JIP");
        employee.setDepartment("Technology");
        
        //create ObjectMapper object
        ObjectMapper mapper = JsonFactory.create();
        
        //parse java object to string
        String jsonString = mapper.toJson(employee);
        
        //print the json string
        System.out.println(jsonString);
    }
}
  • Create a new Object for the Employee class
   Employee employee = new Employee();
  • Set value to the properties of Employee class
   employee.setName("JIP");
   employee.setDepartment("Technology");
  • Create a new ObjectMapper object, it helps us mapping the JSON data with the POJO
ObjectMapper mapper = JsonFactory.create();
  • toJson() met hod converts the employee object into json String.
   String jsonString = mapper.toJson(employee);

Output :

{"name":"JIP","department":"Technology"}

Parse Java Map into JSON

The ObjectMapper can also produce the JSON from the Java Map, we simlpy need to pass the Map as the parameter to the writeValueAsString() method

package com.javainterviewpoint;

import java.util.HashMap;
import java.util.Map;

import org.boon.json.JsonFactory;
import org.boon.json.ObjectMapper;

public class MapToJSON
{
    public static void main(String[] args)
    {
        ObjectMapper mapper = JsonFactory.create();
        
        Map<String,String> employeeMap = new HashMap<String,String>();
        employeeMap.put("Name", "JavaInterviewPoint");
        employeeMap.put("Profession", "Blogging");
        employeeMap.put("Department", "IT");
        
        String jsonString = mapper.writeValueAsString(employeeMap);
        
        System.out.println(jsonString);
    }
}

Output :

{"Name":"JavaInterviewPoint","Profession":"Blogging","Department":"IT"}

In order to write the json to a file simply we need to give the file and the map as the parameter to the writeValue() method.

 mapper.writeValue(new File("D:/employee.json"),employeeMap);

After the execution of the program, We will get the employee.json file written.

Leave a Reply

Your email address will not be published. Required fields are marked *