Heim >Java >javaLernprogramm >Welche Bedeutung hat die Annotation @JsonFilter in Java?

Welche Bedeutung hat die Annotation @JsonFilter in Java?

WBOY
WBOYnach vorne
2023-09-12 16:25:021126Durchsuche

Die Annotation

Welche Bedeutung hat die Annotation @JsonFilter in Java?

@JsonFilter wird verwendet, um benutzerdefinierte Filter zum Serialisieren von Java-Objekten zu definieren. Wir müssen die Klasse FilterProvider verwenden, um den Filter zu definieren und die tatsächliche Filterinstanz abzurufen. Konfigurieren Sie nun den Filter, indem Sie den FilterProvider der Klasse ObjectMapper zuweisen.

Syntax

@Target(value={ANNOTATION_TYPE,TYPE,METHOD,FIELD,PARAMETER})
@Retention(value=RUNTIME)
public @interface JsonFilter

Im folgenden Beispiel kann customFilter als Parameter der Annotation @JsonFilter deklariert werden, die nur den Namen extrahiert und andere Attribute der Bean herausfiltert.

Beispiel

import com.fasterxml.jackson.annotation.JsonFilter;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ser.FilterProvider;
import com.fasterxml.jackson.databind.ser.impl.SimpleBeanPropertyFilter;
import com.fasterxml.jackson.databind.ser.impl.SimpleFilterProvider;
public class JsonFilterAnnotationTest {
   public static void main(String args[]) throws JsonProcessingException {
      ObjectMapper mapper = new ObjectMapper();
      FilterProvider filterProvider = new SimpleFilterProvider().addFilter("customFilter",   SimpleBeanPropertyFilter.filterOutAllExcept("empName"));
      String jsonString = mapper.writer(filterProvider).writeValueAsString(new FilterBean());
      System.out.println(jsonString);
   }
}
@JsonFilter("customFilter")<strong>
</strong>class FilterBean {
   public int empId = 110;
   public String empName = "Raja Ramesh";
   public String gender = "male";
}

Ausgabe

{"empName":"Raja Ramesh"}

Das obige ist der detaillierte Inhalt vonWelche Bedeutung hat die Annotation @JsonFilter in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen