Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java에서 Jackson을 사용하는 @JsonRootName 주석의 중요성?

<시간/>

@JsonRootName 주석을 사용하여 최상위 요소로 직렬화할 개체를 래핑할 수 있습니다. 이름을 매개변수로 @JsonRootName 에 전달할 수 있습니다. 주석. "WRAP_ROOT_VALUE" 를 사용할 수 있습니다. SerializationFeature 의 기능 열거 키가 루트 이름인 단일 속성 JSON 개체 내에서 루트 값을 래핑하도록 활성화할 수 있습니다.

import com.fasterxml.jackson.annotation.JsonRootName;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.SerializationFeature;

public class JsonRootNameAnnotationTest {
   public static void main(String args[]) throws JsonProcessingException {
      ObjectMapper mapper = new ObjectMapper();
      String jsonString = mapper.enable(SerializationFeature.WRAP_ROOT_VALUE).writeValueAsString(new Employee());
      System.out.println(jsonString);
   }
}

@JsonRootName(value = "user")
class Employee {
   public int empId = 125;
   public String empName = "Raja Ramesh";
}

출력

{"user":{"empId":125,"empName":"Raja Ramesh"}}