本文要解决的问题:从 json 字符串反序列化形如 List<BaseItem>
的列表,做采集功能模板化时遇到的问题。
1. 需求
App 端需要采集小区、房屋等实体的信息。采集功能是模板化的,配置文件采用 json 格式。整个模板配置包含许多异构的 json 数组,解析成 Java 对象是 List<>
。
例如,一个采集任务可能包括多个页面(List<Page>
),每个页面有多个卡片(List<Card>
)。Page
和 Card
都是接口,有多种类型的子类,这种列表是异构的列表。