So überschreiben Sie @JsonProperty(value = „id“, access = JsonProperty.Access.READ_ONLY) im Object Mapper
Posted: 27 Jan 2025, 09:37
Ich habe eine Modellklasse, deren Quelle ich nicht ändern kann, sie ist mit Anmerkungen versehen
Fälle, dass Access = jsonProperty.access.read_only ObjectMapper die ID, die in der JSON -Antwort erhältlich ist, nicht deserialisieren wird. /> Gibt es eine Möglichkeit, es zu erzwingen, um genau diese Annotation zu ignorieren [überschreiben]? [*] Ich kann das ursprüngliche Pojo nicht ändern
[*] Ich kann nicht. Insgesamt Eigenschaften]
[*] Ich würde wirklich nicht gerne ein ganz neues dto schreiben
[*] Ich habe versucht, Mixin zu verwenden Eine solche Annotation zu überschreiben, aber entweder mache ich etwas falsch oder es funktioniert nicht < /li>
Ich habe darüber nachgedacht, einen benutzerdefinierten Deserializer zu schreiben und dieses bestimmte Feld manuell zu setzen, aber keinen Weg finden konnte Um den Standard -Deserializer dazu zu bringen, das gesamte Objekt zu deserialisieren und mir genau die fehlende Eigenschaft zu geben
Hat jemand eine Idee, was ich tun kann?
Jemand mit echter Erfahrung mit Mixin kann mir sagen, dass er funktionieren sollte?
Code: Select all
public class Announce {
@JsonProperty(value = "id", access = JsonProperty.Access.READ_ONLY)
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "announce_sequence")
@SequenceGenerator(name = "announce_sequence", sequenceName = "announce_id_sequence", allocationSize = 100)
@Setter(AccessLevel.NONE)
private Long id;
}
[*] Ich kann nicht. Insgesamt Eigenschaften]
[*] Ich würde wirklich nicht gerne ein ganz neues dto schreiben
[*] Ich habe versucht, Mixin zu verwenden Eine solche Annotation zu überschreiben, aber entweder mache ich etwas falsch oder es funktioniert nicht < /li>
Ich habe darüber nachgedacht, einen benutzerdefinierten Deserializer zu schreiben und dieses bestimmte Feld manuell zu setzen, aber keinen Weg finden konnte Um den Standard -Deserializer dazu zu bringen, das gesamte Objekt zu deserialisieren und mir genau die fehlende Eigenschaft zu geben
Hat jemand eine Idee, was ich tun kann?
Jemand mit echter Erfahrung mit Mixin kann mir sagen, dass er funktionieren sollte?