J'utilise Jackson API J'ai essayé la manière suivante, mais cela ne fonctionne pas p> @JsonProperty(value = "field1", required = false)
@ApiObjectField(name = "field1", description = "field1")
private boolean field1 = true;
//getters and setters
3 Réponses :
Créer un constructeur annoté avec le @jsoncreator code> qui reçoit toutes les propriétés JSON que vous souhaitez définir sur votre objet et définir une valeur par défaut sur tout champ de saisie ayant une valeur null.
@JsonCreator
MyObject(@JsonProperty("field1") Boolean field1) {
this.field1 = field1 == null ? true : field1;
}
J'ai également peu de propriétés avec @jsonignore Annotation, devrais-je les inclure dans le constructeur?
Vous n'avez pas besoin de faire cela afaik
Créer une série personnalisée, puis l'ajoutez:
public class MyCustomSerializer extends StdSerializer<Object> { public MyCustomSerializer() { super(Object.class); } @Override public void serialize(Object o, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException { //... } }
Vous pouvez aussi faire cela dans le champ getter aussi.
J'aime: p>