数据的容错处理方法和装置
技术领域
本发明涉及数据处理技术领域,具体涉及数据的容错处理方法和装置。
背景技术
在现有的应用软件,特别是在iOS操作系统的应用软件中,经常有因为客户端对数据的处理类型与后台请求数据类型不兼容,而导致应用程序崩溃的现象发生。
目前对于处理这类崩溃现象的方法大多是重新启动崩溃的应用程序,并在重新启动之后自动恢复崩溃之前该应用程序的使用状态,例如恢复崩溃之前尚未关闭的消息框、恢复崩溃之前自动关闭的窗口页面等等。
但是现有的这种处理方式只是一种崩溃后期的补救措施,当下次在面对同样的因数据兼容性出错时,应用程序还是会崩溃或者卡死,现有的处理方法对于问题本身并没有很好的解决。
发明内容
本发明提供数据的容错处理方法和装置,以达到增强程序的稳定性的目的,克服上述现有的客户端与后台数据类型不兼容的缺陷。
本发明解决上述技术问题的技术方案如下。
根据本发明的一个方面,提供的数据的容错处理方法,该方法包括:
接收数据;
判断接收的数据的属性是否为预设值;
若判断结果为是,则正常接收数据,否则,按照预设的处理方式对接收的数据进行处理。
优选地,上述数据的属性包括数据的字段,该方法具体包括:
判断数据中预设的字段是否存在;
若判断结果为存在,则正常接收数据,否则,将数据中对应的字段处理成默认值。
优选地,针对将数据中对应的字段处理成默认值的步骤,该方法具体包括:
当数据中预设的字段不存在时,在缺失字段的对应位置添加内容为空的字段。
优选地,上述数据的属性包括数据的内容,该方法具体包括:
判断数据的内容是否为空;
若判断结果不为空,则正常接收数据,否则,将数据的内容处理成默认值。
优选地,上述数据的属性包括数据的类型,该方法具体包括:
判断数据的类型是否为预设的类型;
若判断结果为是,则正常接收数据,否则,将数据的类型转换成预设的类型。
根据本发明的另一个方面,提供的数据的容错处理装置,该装置包括:
数据接收模块,用于接收数据;
数据判断模块,用于判断接收的数据的属性是否为预设值;
数据处理模块,用于若判断结果为是,则正常接收数据,否则,按照预设的处理方式对接收的数据进行处理。
优选地,该数据的容错处理装置具体包括:
第一判断单元,用于判断数据中预设的字段是否存在;
字段处理单元,用于若判断结果为存在,则正常接收数据,否则,将数据中对应的字段处理成默认值。
优选地,上述字段处理单元具体包括:
字段添加单元,用于当数据中预设的字段不存在时,在缺失字段的对应位置添加内容为空的字段。
优选地,该数据的容错处理装置具体包括:
第二判断单元,用于判断数据的内容是否为空;
内容处理单元,用于若判断结果不为空,则正常接收数据,否则,将数据的内容处理成默认值。
优选地,该数据的容错处理装置具体还包括:
第三判断单元,用于判断数据的类型是否为预设的类型;
类型处理单元,用于若判断结果为是,则正常接收数据,否则,将数据的类型转换成预设的类型。
本发明提供了数据的容错处理方法和装置,通过对数据本身的各项属性进行判断和处理,在兼容性问题出现的源头进行了预防,保证了数据的合法性,使得应用程序的稳定性和健壮性得以提升,从而避免了客户端和后台因处理的数据类型不同导致的闪退或应用崩溃的问题的出现。
附图说明
图1为根据本发明的一个实施例的数据的容错处理方法的流程图;
图2为根据本发明的另一实施例的数据的容错处理方法的流程图;
图3为根据本发明的又一实施例的数据的容错处理方法的流程图;
图4为根据本发明的再一实施例的数据的容错处理方法的流程图;
图5为根据本发明的一个实施例的数据的容错处理装置的示范性结构框图;
图6为根据本发明的另一实施例的数据的容错处理装置的示范性结构框图;
图7为根据本发明的一个实施例的字段处理单元的示范性结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。
实施例一
图1为根据本发明的一个实施例的数据的容错处理方法的流程图,下面结合图1来描述根据本发明的一个实施例的数据的容错处理方法,如图1所示,该方法包括以下步骤:
S101、接收数据。
其中,该数据的接收方可以是后台服务器也可以是客户端,只要是需要对数据的类型做兼容性处理的都可以作为该数据的接收方进行下面的步骤。
S102、判断接收的数据的属性是否为预设值。
在该步骤中,对于具体判断数据的何种属性可根据预设的属性值来确定,作为可选地,该数据的属性包括但不限于数据的字段、数据的内容、数据的类型等等,其中,与数据的字段对应的预设值例如该数据中预设字段的有无,与数据的内容这一属性值对应的预设值例如该数据的内容是否为空,与该数据的类型这一属性对应的预设值例如该数据的类型是否为满足要求的数据接收方可以识别和操作的类型。
S103、若判断结果为是,则正常接收该数据,否则,按照预设的处理方式对接收的数据进行处理。
其中,该步骤中预设的处理方式与上述步骤中的具体的哪一数据属相对应,将数据属性中不合法的内容处理为合法的内容即能满足兼容性要求。
本实施例针对应用程序在前端与后台因处理的数据类型不同导致崩溃的技术问题,通过在接收数据时对数据的类型及其它属性进行合法性判断,并对不合法的数据进行相应的处理,以保证前端和后台所接收的数据的合法性,从而使得应用程序的稳定性和健壮性得以加强。
实施例二
图2为根据本发明的另一实施例的数据的容错处理方法的流程图,如图2所示,该数据的容错处理方法在包括上述步骤S101的基础上,上述步骤S102具体为:
S201、判断接收的数据中预设的字段是否存在,若是,则跳转到步骤S202,否则,跳转到步骤S203;
S202、正常接收该数据;
S203、将数据中对应的字段处理成默认值。
其中,上述预设的字段是针对数据中预设位置的字段的检测,判断数据中的关键部分是否缺失以保证数据的合法性。
进一步地,针对将数据中对应的字段处理成默认值的步骤,该方法具体包括:
当数据中预设的字段不存在时,在缺失字段的对应位置添加内容为空的字段。
在该步骤中,对于缺失字段的对应位置添加的字段的内容不限于空,也可以是内容代码,例如表示该字段为添加字段的代码等等。
本实施例出于对数据格式的合法性的考虑,将数据中关键字段的存在与否纳入数据属性的判断范围,使得本发明具有较好的可扩展性。
实施例三
图3为根据本发明的又一实施例的数据的容错处理方法的流程图,如图3所示,该数据的容错处理方法在包括上述步骤S101的基础上,上述步骤S102具体为:
S301、判断接收的数据的内容是否为空,若否,则跳转到步骤S202,否则,跳转到步骤S302;
S202、正常接收该数据;
S302、将数据的内容处理成默认值。
其中,将数据的内容处理成默认值例如将数据标记空值代码。
本实施例使得数据接收方在接收数据时只需识别该控制代码即可知道该条数据的内容为空,而不用解析之后才知道,提高数据的处理效率,也增强了本发明的可实现性。
实施例四
图4为根据本发明的再一实施例的数据的容错处理方法的流程图,如图4所示,该数据的容错处理方法在包括上述步骤S101的基础上,具体还包括以下步骤:
S201、判断接收的数据中预设的字段是否存在,若是,则跳转到步骤S301,否则,跳转到步骤S203;
S203、将数据中对应的字段处理成默认值。
S301、判断接收的数据的内容是否为空,若否,则跳转到步骤S401,否则,跳转到步骤S302;
S401、判断接收的数据的类型是否为预设的类型,若是,则跳转到步骤S202,否则跳转到步骤S402;
S402、将数据的类型转换成预设的类型;
S202、正常接收该数据。
针对上述步骤S203,该方法具体包括:
当数据中预设的字段不存在时,在缺失字段的对应位置添加内容为空的字段。其中,对于缺失字段的对应位置添加的字段的内容不限于空,也可以是内容代码,例如表示该字段为添加字段的代码等等。
本实施例提供的数据的容错处理方法通过将数据的字段、数据的内容以及数据的类型均考虑在数据属性的范围内作为合法性判断的标准,使得本发明考虑的层面更加完整,确保数据合法性判断的准确性。
实施例五
图5为根据本发明的一个实施例的数据的容错处理装置的示范性结构框图,下面根据图5来描述根据本发明的一个实施例的数据的容错处理装置100,如图5所示,该装置包括:
数据接收模块10,用于接收数据;
数据判断模块20,用于判断接收的数据的属性是否为预设值;
数据处理模块30,用于若判断结果为是,则正常接收数据,否则,按照预设的处理方式对接收的数据进行处理。
图6为根据本发明的另一实施例的数据的容错处理装置的示范性结构框图。如图6所示,作为优选地,上述数据判断模块20进一步包括:
第一判断单元21,用于判断数据中预设的字段是否存在;
第二判断单元22,用于判断数据的内容是否为空;
第三判断单元23,用于判断数据的类型是否为预设的类型。
进一步,上述数据处理模块30具体包括:
字段处理单元31,用于若判断结果为存在,则正常接收数据,否则,将数据中对应的字段处理成默认值;
内容处理单元32,用于若判断结果不为空,则正常接收数据,否则,将数据的内容处理成默认值;
类型处理单元33,用于若判断结果为是,则正常接收数据,否则,将数据的类型转换成预设的类型。
其中,上述第一判断单元21的输入端、第二判断单元22的输入端和第三判断单元23的输入端均连接数据接收模块10的输出端,该第一判断单元21的输出端连接字段处理单元31的输入端,该第二判断单元22的输出端连接内容处理单元32的输入端,该第三判断单元23的输出端连接类型处理单元33的输入端。
图7为根据本发明的一个实施例的字段处理单元的示范性结构框图,如图7所示,作为可选地,该字段处理单元31具体还包括:
字段添加单元311,用于当数据中预设的字段不存在时,在缺失字段的对应位置添加内容为空的字段。
本实施例提供的数据的容错处理装置可应用于各种移动终端中。进一步地,该移动终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如移动电话、智能电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、导航装置等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。然而,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。
本发明提供的数据的容错处理装置,通过运行和使用上述数据的容错处理方法,对数据本身的各项属性进行判断,并对不符合地方进行对应的处理,保证了数据的合法性,本发明在兼容性问题的源头进行了预防,使得应用程序的稳定性和健壮性得以提升,从而避免了客户端和后台因处理的数据类型不同导致的闪退、卡死或应用崩溃等问题的出现。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。