Ich habe diese abstrakte Klasse, die einige gemeinsame Eigenschaften für meine Entitäten bietet. Der folgende Text ist ein Auszug:Wie erstellt man eine virtuelle JSON-Eigenschaft beim Serialisieren?
@MappedSuperclass
public class AbstractEntity implements Serializable {
@Id
@GeneratedValue
private long id;
@Temporal(value = TemporalType.TIMESTAMP)
@JsonProperty(access = Access.READ_ONLY)
private Date createdOn;
@Temporal(value = TemporalType.TIMESTAMP)
@JsonProperty(access = Access.READ_ONLY)
private Date modifiedOn;
⋮
}
Wenn eine Unterklasse der Serialisierung JSON ich die erwarteten Ergebnisse zu erhalten, zum Beispiel, das ist ein Auszug aus der Serialisierung:
{
"createdOn": "2016-12-11T15:35:23Z",
"modifiedOn": "2016-12-11T15:35:23Z",
⋮
}
Ich brauche diese gemeinsame Eigenschaften haben serialisiert zu einem JSON-Objekt, so dass das obige Beispiel wie folgt aussieht: habe
{
"_metadata": {
"createdOn": "2016-12-11T15:35:23Z",
"modifiedOn": "2016-12-11T15:35:23Z",
}
⋮
}
ich bereits versucht, eine Klasse mit Metadata
und mit einer Eigenschaft namens dieser Typ funktioniert gut. Aber ich frage mich, ob es einen einfacheren oder einfacheren Weg gibt, nur Jackson Annotationen zu verwenden?
Es ist möglicherweise eine erneute Frage. Siehe: [http://stackoverflow.com/questions/19158345/custom-json-deserialization-with-jackson](http://stackoverflow.com/questions/19158345/custom-json-deserialization-with-jackson) –