[java] JSON 데이터를 자바 객체로 변환하기

JSON(JavaScript Object Notation)은 데이터를 표현하는 자바스크립트의 표준 형식입니다. JSON 데이터를 자바 객체로 변환하는 방법에 대해 알아보겠습니다.

라이브러리 추가

먼저, JSON 데이터를 자바 객체로 변환하기 위해 jackson-databind 라이브러리를 사용해야 합니다. Maven을 사용한다면 pom.xml 파일에 다음 의존성을 추가합니다.

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.12.5</version>
</dependency>

JSON 데이터를 자바 객체로 변환하기

JSON 데이터를 자바 객체로 변환하는 방법은 다음과 같습니다.

import com.fasterxml.jackson.databind.ObjectMapper;

public class JsonToObjectConverter {
    public static void main(String[] args) {
        String json = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";

        try {
            ObjectMapper objectMapper = new ObjectMapper();
            Person person = objectMapper.readValue(json, Person.class);
            System.out.println(person);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

class Person {
    private String name;
    private int age;
    private String city;

    // getters and setters

    @Override
    public String toString() {
        return "Person{name='" + name + "', age=" + age + ", city='" + city + "'}";
    }
}

위 예제에서 json 문자열은 JSON 데이터를 나타냅니다. ObjectMapper 클래스는 JSON 데이터를 자바 객체로 변환해주는 역할을 합니다. readValue() 메서드를 사용하여 JSON 데이터를 변환하고, Person 클래스로 변환된 결과를 받아옵니다.

Person 클래스는 JSON 데이터의 필드와 동일한 필드를 가지며, JSON 데이터와 매칭되는 필드에 값이 설정됩니다.

실행 결과

위 예제를 실행하면 다음과 같은 결과를 얻을 수 있습니다.

Person{name='John', age=30, city='New York'}

JSON 데이터가 자바 객체로 정상적으로 변환되었음을 확인할 수 있습니다.

참고 자료