Showing posts with label JSON. Show all posts
Showing posts with label JSON. Show all posts

Tuesday, December 14, 2021

How spring rest and jackson convert java pojo to json behind the scene


Lets see a practical example-

POJO:

public class Student{

private String firstName;

private String lastName;

public Student(String firstName,String lastName){

    this.firstName = firstName;

    this.lastName = lastName;

}

public void setFirstName(String firstName){

      this.firstName = firstName;

}

public String getFirstName(){

     return firstName;

}

public void setLastName(String lastName){

      this.lastName= lastName;

}

public String getLastName(){

     return lastName;

  }

}

RestController:

@RestController

@RequestMapping("/api")

public class StudentRestController{

@GetMapping("/students")

public List<Student> getStudents(){

        List<Student> students = new ArrayList<Student>();

        students.add(new Student("lokman","hossain"));

        students.add(new Student("sadia","muna"));

    return students;

    }

}

If we hit to that given end point (/api/students/) it will send a json array with two json object . So how it convert into json .

jackson convert the java pojo into json and sends back to the client .



















Sunday, December 12, 2021

What is json?

 JSON- Javascript object notation.

-- Lightweight data format for storing and exchanging data(as plain text).

--Language independent.

JSON object example-

{

    "id":1,

    "name":"Rafik",

   "age":20

}

Object members are name value pair. Name and value are delimited by colon(:)

N.B: Name are always in double quote("").


Nested JSON object

{

    "id":1,

    "name":"Sadia siddika muna",

    age:24,

    department:{

                      "name":"english",

                        "department code":101

                    }

}

JSON arrays:

{

     "id":101,

     "name":"muna",

     "address":"Barishal",

     "languages":["java","python","javascript"]

}

Let's see a simple JSON array example having 3 objects.

{

        "employees":[

          {"name":"muna","email":"muna@gmail.com","age":24},

          {"name":"sadia","email":"sadia@gmail.com","age":24},

          {"name":"siddika","email":"siddika@gmail.com","age":24},

 ]

}

Javascript module

JavaScript Modules (ES6) let you split code into multiple files and reuse code cleanly. Main keywords: export → make something available...