Ein Projekt muss die folgende Kombination von Jackson Annotationen zusammen eine Menge verwenden. So ist es eine Möglichkeit, eine andere Anmerkung zu erstellen hässliches Kopieren/Einfügen zu vermeiden:Erstellen Sie eine benutzerdefinierte Jackson Annotation
public class A {
@JsonProperty("_id")
@JsonSerialize(using=IdSerializer.class)
@JsonDeserialize(using=IdDeserializer.class)
String id;
}
public class B {
@JsonProperty("_id")
@JsonSerialize(using=IdSerializer.class)
@JsonDeserialize(using=IdDeserializer.class)
String id;
}
public class C {
@CustomId // don't repeat that configuration endlessly
String id;
}
Update: Ich habe dies versucht, ohne Erfolg :-(
@Retention(RetentionPolicy.RUNTIME)
@JacksonAnnotationsInside
@JsonProperty("_id")
@JsonSerialize(using=IdSerializer.class, include=JsonSerialize.Inclusion.NON_NULL)
@JsonDeserialize(using=IdDeserializer.class)
public @interface Id {}
public class D {
@Id
private String id;
}
ich es nicht erhalten, können Sie bitte ein Beispiel für das, was es aussehen würde? Vielen Dank. –
@yvesamsellem Ich habe meine Antwort mit mehr Code bearbeitet – emory
Ok. Es scheint ein erster interessanter Schritt zu sein. Irgendeine Idee, nur Serializer & Deserializer zu sammeln? Danke vielmals. –