问题1:统一格式下某一字段实体类型不确定如何解决,类似下图(push_info字段本质上他的值为String字符串,但该字符串实际上是想表达一种实体类型,但具体该实体中有哪些字段属性不确定)
基本思想:
将不确定字段的内容作为键值对形式,类似map集合,进行分装,使用的时候由键获取值进行对应操作。
方法一:
1.将该整体json数据解析,类似下图
思考:Bean对象中的mPush属性的类型是JSONObject,可以替换成HashMap,这样就不用提供获取属性list的方法(getPushInfoList()方法)。
方法二:
基本思想:根据pushcode区分不同类型的实体,首先创建好学要的实体模板,然后根据pushcode的值,用json解析时放入对应的模板.class;(模板数量过多,不利于维护,冗余代码过多,相对上一种方法不灵活,新增push_info数据格式,就要添加对应的实体模板;优点是,在push_info中可以放更复杂的json串,不限于键值对,可嵌套jsonarray等)。
疑问?:
有没有办法不进行两次解析,类似下图,不用第二次对push_info在进行解析,对push_info的解析可不可以分装在bean中一次完成,或者别的方式???