Jackson-첫 번째 응용 프로그램

jackson 라이브러리에 대해 자세히 살펴보기 전에 애플리케이션이 작동하는지 살펴 보겠습니다. 이 예에서는 Student 클래스를 만들었습니다. 학생 세부 정보가 포함 된 JSON 문자열을 만들고이를 student 객체로 역 직렬화 한 다음 JSON 문자열로 직렬화합니다.

JacksonTester라는 Java 클래스 파일을 만듭니다. C:\>Jackson_WORKSPACE.

파일 : JacksonTester.java

import java.io.IOException;

import com.fasterxml.jackson.core.JsonParseException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;

public class JacksonTester {
   public static void main(String args[]){
   
      ObjectMapper mapper = new ObjectMapper();
      String jsonString = "{\"name\":\"Mahesh\", \"age\":21}";
      
      //map json to student
      try{
         Student student = mapper.readValue(jsonString, Student.class);
         
         System.out.println(student);
         
         jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(student);
         
         System.out.println(jsonString);
      }
      catch (JsonParseException e) { e.printStackTrace();}
      catch (JsonMappingException e) { e.printStackTrace(); }
      catch (IOException e) { e.printStackTrace(); }
   }
}

class Student {
   private String name;
   private int age;
   public Student(){}
   public String getName() {
      return name;
   }
   public void setName(String name) {
      this.name = name;
   }
   public int getAge() {
      return age;
   }
   public void setAge(int age) {
      this.age = age;
   }
   public String toString(){
      return "Student [ name: "+name+", age: "+ age+ " ]";
   }
}

Verify the result

다음을 사용하여 클래스 컴파일 javac 다음과 같이 컴파일러 :

C:\Jackson_WORKSPACE>javac JacksonTester.java

이제 jacksonTester를 실행하여 결과를 확인합니다.

C:\Jackson_WORKSPACE>java JacksonTester

출력 확인

Student [ name: Mahesh, age: 21 ]
{
  "name" : "Mahesh",
  "age" : 21
}

기억해야 할 단계

다음은 여기서 고려해야 할 중요한 단계입니다.

1 단계 : ObjectMapper 개체를 만듭니다.

ObjectMapper 객체를 만듭니다. 재사용 가능한 개체입니다.

ObjectMapper mapper = new ObjectMapper();

2 단계 : JSON을 Object로 DeSerialize합니다.

readValue () 메서드를 사용하여 JSON에서 개체를 가져옵니다. json 문자열 / json 문자열의 소스 및 개체 유형을 매개 변수로 전달합니다.

//Object to JSON Conversion
Student student = mapper.readValue(jsonString, Student.class);

3 단계 : 객체를 JSON으로 직렬화합니다.

writeValueAsString () 메서드를 사용하여 객체의 JSON 문자열 표현을 가져옵니다.

//Object to JSON Conversion		
jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(student);