Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
Example of Polymorphic Deserialization using Jackson
import com.fasterxml.jackson.annotation.JsonSubTypes;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.fasterxml.jackson.databind.PropertyNamingStrategy;
import com.fasterxml.jackson.databind.annotation.JsonNaming;
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type")
@JsonSubTypes.Type(value=AudioAttachment.class, name="audio"),
@JsonSubTypes.Type(value=LinkAttachment.class, name="link")
public class Attachment {
public class Audio {
public int aid;
public int ownerId;
public class AudioAttachment extends Attachment {
public Audio audio;
public class Link {
public String url;
public String title;
public class LinkAttachment extends Attachment {
public Link link;
Copy link

Excellent tutorial!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment