Jackson @JsonIgnore chú thích có thể được sử dụng để bỏ qua một tài sản nhất định hoặc trường của một đối tượng Java. Thuộc tính có thể bị bỏ qua cả khi đọc JSON thành các đối tượng Java và khi viết các đối tượng Java vào JSON. Chúng tôi có thể sử dụng readValue () và writeValueAsString () các phương thức của ObjectMapper lớp để đọc một đối tượng JSON sang Java và ghi một đối tượng Java vào JSON.
Cú pháp
@Target(value={ANNOTATION_TYPE,METHOD,CONSTRUCTOR,FIELD}) @Retention(value=RUNTIME) public @interface JsonIgnore
Ví dụ
import java.io.*; import com.fasterxml.jackson.annotation.*; import com.fasterxml.jackson.databind.*; public class JsonIgnoreTest { public static void main(String[] args) throws IOException { Customer customer = new Customer("110", "Surya Kiran", "Chennai"); System.out.println(customer); ObjectMapper mapper = new ObjectMapper(); String jsonString = mapper.writeValueAsString(customer); System.out.println("JSON: " + jsonString); System.out.println("---------"); jsonString = "{\"id\":\"120\",\"name\":\"Devaraj\", \"address\":\"Banglore\"}"; System.out.println("JSON: " + jsonString); customer = mapper.readValue(jsonString, Customer.class); System.out.println(customer); } } // Customer class class Customer { private String id; private String name; @JsonIgnore private String address; public Customer() { } public Customer(String id, String name, String address) { this.id = id; this.name = name; this.address = address; } public String getId() { return id; } public String getName() { return name; } public String getAddress() { return address; } @Override public String toString() { return "Customer [id=" + id + ", name=" + name + ", address=" + address + "]"; } }
Đầu ra
Customer [id=110, name=Surya Kiran, address=Chennai] JSON: {"id":"110","name":"Surya Kiran"} --------- JSON: {"id":"120","name":"Devaraj", "address":"Banglore"} Customer [id=120, name=Devaraj, address=null]