美文网首页
统一格式下某一字段实体类型不确定

统一格式下某一字段实体类型不确定

作者: 书魂X | 来源:发表于2017-04-10 13:28 被阅读0次

问题1:统一格式下某一字段实体类型不确定如何解决,类似下图(push_info字段本质上他的值为String字符串,但该字符串实际上是想表达一种实体类型,但具体该实体中有哪些字段属性不确定)

图 1.1 整体json数据 图1.2 变动的字段

基本思想:

将不确定字段的内容作为键值对形式,类似map集合,进行分装,使用的时候由键获取值进行对应操作。

方法一:

1.将该整体json数据解析,类似下图

图 2.1 图 2.2 图 2.3 图 2.4 分装获取键值list的方法 图 2.5  图 2.6 获取list后的使用

思考:Bean对象中的mPush属性的类型是JSONObject,可以替换成HashMap,这样就不用提供获取属性list的方法(getPushInfoList()方法)。

图 2.7 图 2.8

方法二:

基本思想:根据pushcode区分不同类型的实体,首先创建好学要的实体模板,然后根据pushcode的值,用json解析时放入对应的模板.class;(模板数量过多,不利于维护,冗余代码过多,相对上一种方法不灵活,新增push_info数据格式,就要添加对应的实体模板;优点是,在push_info中可以放更复杂的json串,不限于键值对,可嵌套jsonarray等)。

疑问?:

有没有办法不进行两次解析,类似下图,不用第二次对push_info在进行解析,对push_info的解析可不可以分装在bean中一次完成,或者别的方式???

图 3.1

相关文章

  • 统一格式下某一字段实体类型不确定

    问题1:统一格式下某一字段实体类型不确定如何解决,类似下图(push_info字段本质上他的值为String字符串...

  • java.sql.SQLException: Invalid v

    主要是表中的字段与实体类中字段格式不同,数据库中cid是varchar类型,而实体表中cid是integer忘了该...

  • Json时间格式转换

    1,导包 2,时间格式转换类 3,在实体类的某一字段上映入

  • Oracle 查询当天、当周、当月和当季度的所有记录

    字段类型为varchar2,格式要与格式化的样式匹配 当天 当周 当月 当季度 字段类型为date 当天 当周 当...

  • 2019-02-15——ABAP10格式化数据

    write 用于格式化的各种子句 数字类型字段的格式设置选项用于格式化的各种子句 日期字段的不同格式设置选项

  • swift 4 :codable json 解析问题

    字段不全:客户端有的字段,后台并没有返回 字段类型不确定:Int/String/Double 后台返回不一致 字段...

  • greendao 3.2.2使用心得

    1.实体的字段最好为对象类型(原因:若为基本数据类型,则其对应表中的字段会默认添加约束notnull;若为对象类型...

  • android sqlite数据库 创建表

    创建表的语句很简单,格式如下create table 表名(字段名 类型,字段名 类型,…); 当你new了之后,...

  • HTTP 首部

    分类 请求首部字段、响应首部字段、通用首部字段、实体首部字段。注意,实体分为实体首部、实体主体。 请求首部字段 响...

  • ts 多态

    定义:为不同数据类型的实体(子类实体)提供统一的接口(父类类型的引用) 示例:函数的形参只写父类引用(统一参数),...

网友评论

      本文标题:统一格式下某一字段实体类型不确定

      本文链接:https://www.haomeiwen.com/subject/lljsattx.html