0
私のシステムが読み込んでいるいくつかのJSONオブジェクトでJsonTypeInfoを使用して多態性を処理しています。システムはこれらのオブジェクトを他のサービスに提供します。場合によっては、タイプ情報などの詳細なオブジェクトが必要な場合があります。また、オブジェクトの最小限のビューをベアボーンで作成したい場合もあります。Jackson JsonViewとJSonTypeInfo
これを処理するためにJsonViewsをセットアップしようとしていますが、私が何をしていても、シリアル化されたJSONの型情報が含まれています。私はいくつかの異なる方法を試しましたが、以下は私がしようとしていることの例です。
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type")
@JsonSubTypes({
@JsonSubTypes.Type(value = PlayerSpawnedEvent.class, name = "PlayerSpawnedEvent"),
@JsonSubTypes.Type(value = PlayerStateChangedEvent.class, name = "EntityStateChangeEvent")
})
public abstract class AbstractEvent
{
@JsonView(Views.Detailed.class)
public String type;
@JsonView(Views.Detailed.class)
public String id;
@JsonView(Views.Minimal.class)
public long time;
}