在日常的开发过程中,我们常常要处理不同来源的数据。数据可能来自不可靠的外部系统、不可靠的用户输入和甚至设计有误的数据库表,因此,对数据有效性进行验证是必要的工作。
开源工具ABAP Data Validator是一个使用ABAP开发的数据验证工具,它可以简化开发者在这方面的工作。本文将介绍它的用法和一些设计思路。
本文链接:https://www.cnblogs.com/hhelibeb/p/12206648.html
原创内容,转载请注明
目的具体而言,ABAP Data Validator将通过以下的思路简化数据有效性验证方面的工作:
提供统一的检查接口,让开发者通过单次方法调用就可以实现对数据的检查。
将验证逻辑集中实现,避免相似的检查代码分散在系统各处造成的逻辑不一致,从而降低相关程序的维护成本。
避免检查过程中的潜在dump,减少开发者处理dump问题的精力花费。
为了实现以上目的,该工具实现了一些功能:
内置常见的验证逻辑。
可配置的检查规则。
可扩展的检查程序。
异常的统一处理。
支持的检查列表ABAP Data Validator目前支持以下类型的检查(持续更新中):
日期.
时间.
时间戳.
邮件地址.
INT4.
正则字符串.
URL.
JSON.
HEX.
IMEI.
GUID.
BASE64.
HTML (实验性的).
此外,它也支持对内表字段的必填检查、根据数据元素的类型进行检查等功能,下文会详细介绍。
使用ABAP Data Validator支持多种检查方式,下面会由简单到复杂进行逐一介绍。
对单一字段的直接检查对于每种数据类型,ABAP Data Validator会有一个专门的检查类,可以用这些检查类的is_valid方法来检查变量的值是否有效,就像使用abap的内置函数那样。比如,要检查一个字符串是否是有效的邮箱地址,可以用如下代码实现,
IF zcl_adv_email_check=>is_valid( 'example@github.com' ). "do something ENDIF.