Maison >Java >javaDidacticiel >Comment ignorer les champs d'un objet JSON à l'aide de la bibliothèque Jackson en Java ?

Comment ignorer les champs d'un objet JSON à l'aide de la bibliothèque Jackson en Java ?

PHPz
PHPzavant
2023-09-12 09:41:071510parcourir

L'annotation

Comment ignorer les champs dun objet JSON à laide de la bibliothèque Jackson en Java ?

Jackson @JsonIgnore peut être utilisée pour ignorer une propriété ou un champ un objet Java. Cette propriété peut être ignorée lors de la lecture de JSON dans des objets Java et lors de l'écriture d'objets Java dans JSON. Nous pouvons lire JSON en tant qu'objet Java et écrire un objet Java dans JSON en utilisant les méthodes readValue() et writeValueAsString() de la classe ObjectMapper.

Syntaxe

@Target(value={ANNOTATION_TYPE,METHOD,CONSTRUCTOR,FIELD})
@Retention(value=RUNTIME)
public @interface JsonIgnore

Exemple

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<strong>
</strong>class Customer {
   private String id;
   private String name;
<strong>  </strong> @JsonIgnore<strong>
</strong>   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 + "]";
   }
}

Sortie

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]

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer