Fastjson API の ParseProcess


1. Fastjson API ParseProcess の紹介

ParseProcess は、カスタマイズされた逆シリアル化を拡張するためのプログラミング用のインターフェイスです。 fastjson は次の ParseProcess をサポートします。

  • #ExtraProcessor は冗長フィールドの処理に使用されます
  • ExtraTypeProvider は冗長フィールドの処理時に型情報を提供するために使用されます

public static class VO {
    private int id;
    private Map<String, Object> attributes = new HashMap<String, Object>();
    public int getId() { return id; }
    public void setId(int id) { this.id = id;}
    public Map<String, Object> getAttributes() { return attributes;}
}

ExtraProcessor processor = new ExtraProcessor() {
    public void processExtra(Object object, String key, Object value) {
        VO vo = (VO) object;
        vo.getAttributes().put(key, value);
    }
};

VO vo = JSON.parseObject("{\"id\":123,\"name\":\"abc\"}", VO.class, processor);
Assert.assertEquals(123, vo.getId());
Assert.assertEquals("abc", vo.getAttributes().get("name"));