Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Cách bỏ qua một class trong quá trình serialization sử dụng Jackson trong Java


Annotation @JsonIgnoreType của Jackson dùng để bỏ qua một class trong quá trình serialization và nó đánh dấu tất cả properties hoặc fields của class bị bỏ qua khi serializing và deserializing JSON object.

Cú pháp

@Target(value={ANNOTATION_TYPE,TYPE}) @Retention(value=RUNTIME) public @interface JsonIgnoreType

Ví dụ

import com.fasterxml.jackson.annotation.*; import com.fasterxml.jackson.core.*; import com.fasterxml.jackson.databind.*; import java.io.*; public class JsonIgnoreTypeTest {    public static void main(String args[]) throws IOException {       Employee emp = new Employee();       ObjectMapper mapper = new ObjectMapper();       String jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(emp);       System.out.println(jsonString);    } } // Employee class class Employee {    @JsonIgnoreType    public static class Address {       public String firstLine = null;       public String secondLine= null;       public String thirdLine = null;       @Override       public String toString() {          return "Address{" +                 "firstLine='" + firstLine+ '\'' +                 ", secondLine='" + secondLine+ '\'' +                 ", thirdLine='" + thirdLine + '\'' +                 '}';       }    } // end of Address class    public long empId = 115;    public String empName = "Raja Ramesh";    public Address empAddress = new Address();    @Override    public String toString() {       return "Employee{" +              "empId=" + empId +              ", empName='" + empName + '\'' +              ", empAddress=" + empAddress +              '}';    } }

Kết quả

{    "empId" : 115,    "empName" : "Raja Ramesh" }