> Java > java지도 시간 > 본문

Java에서 Jackson 라이브러리를 사용하여 null 및 void 필드를 무시하는 방법은 무엇입니까?

WBOY
풀어 주다: 2023-08-30 13:17:05
앞으로
841명이 탐색했습니다.

Java에서 Jackson 라이브러리를 사용하여 null 및 void 필드를 무시하는 방법은 무엇입니까?

Jackson은 매우 강력한 데이터 바인딩 기능을 갖추고 사용자 정의 Java 개체를 JSON으로 직렬화하고 JSON을 다시 Java 개체로 역직렬화하는 프레임워크를 제공하는 Java용 라이브러리입니다. Jackson 라이브러리는 값을 기반으로 직렬화하는 동안 전체 클래스 또는 개별 필드의 직렬화를 제어할 수 있는 @JsonInclude 주석을 제공합니다.

@JsonInclude 주석에는 다음 두 값 ​​

  • Include.NON_NULL이 포함되어 있습니다. null이 아닌 값이 있는 속성만 JSON에 포함됨을 나타냅니다.
  • Include.NON_EMPTY: 비어 있지 않은 속성만 JSON에 포함됨을 나타냅니다.

import com.fasterxml.jackson.annotation.*;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.core.*;
import com.fasterxml.jackson.databind.*;
public class IgnoreNullAndEmptyFieldTest {
   public static void main(String[] args) throws JsonProcessingException {
      ObjectMapper mapper = new ObjectMapper();
      mapper.enable(SerializationFeature.INDENT_OUTPUT);
      Employee employee = new Employee(115, null, ""); // passing null and empty fields
      String result = mapper.writeValueAsString(employee);
      System.out.println(result);
   }
}
// Employee class
class Employee {
   private int id;
   @JsonInclude(Include.NON_NULL)
   private String firstName;
   @JsonInclude(Include.NON_EMPTY)<strong>
</strong>   private String lastName;
   public Employee(int id, String firstName, String lastName) {
      super();
      this.id = id;
      this.firstName = firstName;
      this.lastName = lastName;
   }
   public int getId() {
      return id;
   }
   public void setId(int id) {
      this.id = id;
   }
   public String getFirstName() {
      return firstName;
   }
   public void setFirstName(String firstName) {
      this.firstName = firstName;
   }
   public String getLastName() {
   return lastName;
   }
   public void setLastName(String lastName) {
      this.lastName = lastName;
   }
}
로그인 후 복사

출력

<strong>{
 "id" : 115
}</strong>
로그인 후 복사

위 내용은 Java에서 Jackson 라이브러리를 사용하여 null 및 void 필드를 무시하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿