개발노트

@JsonProperty: JSON 데이터와 Java 객체 매핑 본문

Programming/JAVA

@JsonProperty: JSON 데이터와 Java 객체 매핑

dev? 2024. 2. 22. 09:35
반응형

JSON(JavaScript Object Notation)은 웹 개발에서 데이터를 교환하는 표준 포맷 중 하나입니다. Java에서 JSON 데이터를 처리할 때, @JsonProperty 어노테이션은 Jackson 라이브러리를 사용하는 개발자들에게 필수적인 도구입니다. 

 

@JsonProperty란?

@JsonProperty는 Jackson 라이브러리의 어노테이션 중 하나로, Java 객체의 필드와 JSON 객체의 속성 간의 매핑을 정의한다. 이 어노테이션을 사용함으로써 JSON 속성명과 Java 필드명이 다를 경우에도 서로를 연결할 수 있습니다.

 

기능과 장점

  • 명시적 매핑: JSON 속성명과 Java 필드명이 다른 경우, @JsonProperty를 사용하여 명시적으로 매핑할 수 있습니다.
  • 직렬화/역직렬화 제어: 객체를 JSON으로 변환하거나(JSON 직렬화), JSON을 객체로 변환하는 과정(JSON 역직렬화)에서 특정 필드의 이름을 제어할 수 있습니다.
  • 가독성 향상: 코드에서 JSON 속성명과 Java 필드명 간의 관계를 명확하게 표현함으로써, 다른 개발자가 코드를 이해하기 쉬워집니다.

 

사용 방법

@JsonProperty 어노테이션은 필드 레벨이나 게터/세터 메서드에 적용할 수 있습니다.

import com.fasterxml.jackson.annotation.JsonProperty;

public class User {
    
    @JsonProperty("id")
    private String userId;

    @JsonProperty("name")
    private String userName;

    // Constructor, Getters, and Setters
}

 

출처 : ChatGPT

반응형

'Programming > JAVA' 카테고리의 다른 글

Thread (쓰레드)  (0) 2022.05.17
직렬화(Serialization)  (0) 2022.05.16
InputStream, OutputStream, FileInputStream, FileOutputStream  (0) 2022.05.15
Collections.sort()  (0) 2022.05.14
List / ArrayList 클래스  (0) 2022.05.13