程序中,数据验证与处理规则
2005-02-06 09:30
330 查看
我们经常需要校验数据是否存在,格式是否正确,如果每个函数都处理这些,导致函数中大量的代码用于校验数据,那么应该遵循下列规则,做到既满足系统需要,又不会导致大量的校验代码:
1.集中进行数据校验,如:用户输入的数据,数据库中查询出来的数据等等,如果能够做到集中校验数据,那么将能够省心、省力。做不到的话,那就请遵循第2条。
2.在使用的地方校验,什么地方使用什么数据,就需要进行校验,特别是那些判断对象是否存在或者其他的。
3.校验些什么数据:
基本规则,校验那些自己控制不了的数据
a:)用户的输入,尽量让用户少输入数据,使用菜单、选择、CheckBox、RadioBox等等手段,让用户进行选择,如果确实需要用户输入的,那么就请校验它。包括:在界面上,输入时直接校验,或者在程序中,集中的校验它。
b:)从数据库中查询来的结果,如果数据库永远只从自己的代码中输入数据,那么就不必校验了,如果数据来自于第三方或者数据库格式可能发生变化,那么也请校验吧(辛苦啦
:)。
C:)第三方的数据来源:别人的程序、别人的数据、别人的WebService。。。。只要时别人的,拿到后就校验它。使用的时候就要校验,别偷懒,谁知道别人会不会传个大象过来,却说是只蚂蚁呢
... ...
D:)当一个数据需要从A类型转换为B类型的时候,你需要校验它是否能够转换,最好自己封装一个Convert类来统一处理这种转换,统一做错误处理和当错误发生时,返回的缺省值,可以省去在程序中不断的校验,不断的处理缺省值。
自己可以控制的数据,在使用、传递过程中,有错误怎么办,如果是这样,最好是抛出异常,改正错误。
1.集中进行数据校验,如:用户输入的数据,数据库中查询出来的数据等等,如果能够做到集中校验数据,那么将能够省心、省力。做不到的话,那就请遵循第2条。
2.在使用的地方校验,什么地方使用什么数据,就需要进行校验,特别是那些判断对象是否存在或者其他的。
3.校验些什么数据:
基本规则,校验那些自己控制不了的数据
a:)用户的输入,尽量让用户少输入数据,使用菜单、选择、CheckBox、RadioBox等等手段,让用户进行选择,如果确实需要用户输入的,那么就请校验它。包括:在界面上,输入时直接校验,或者在程序中,集中的校验它。
b:)从数据库中查询来的结果,如果数据库永远只从自己的代码中输入数据,那么就不必校验了,如果数据来自于第三方或者数据库格式可能发生变化,那么也请校验吧(辛苦啦
:)。
C:)第三方的数据来源:别人的程序、别人的数据、别人的WebService。。。。只要时别人的,拿到后就校验它。使用的时候就要校验,别偷懒,谁知道别人会不会传个大象过来,却说是只蚂蚁呢
... ...
D:)当一个数据需要从A类型转换为B类型的时候,你需要校验它是否能够转换,最好自己封装一个Convert类来统一处理这种转换,统一做错误处理和当错误发生时,返回的缺省值,可以省去在程序中不断的校验,不断的处理缺省值。
自己可以控制的数据,在使用、传递过程中,有错误怎么办,如果是这样,最好是抛出异常,改正错误。
相关文章推荐
- FastDev介绍系列之[数据规则验证](上)
- [导入]FastDev介绍系列之[数据规则验证](上)
- struts2:数据校验,通过Action中的validate()方法实现校验(续:多业务方法时的不同验证处理)
- 《项目经验》--通过js获取前台数据向一般处理程序传递Json数据,并解析Json数据,将前台传来的Json数据写入数据库表中
- 微信小程序之支付后调用SDK的异步通知及验证处理订单
- Jquery EasyUI +Ajax +Json +一般处理程序 实现数据的前台与后台的交互 --- 善良公社项目
- Enterprise Library3.1 使用数据访问模块时,调用Microsoft.Practices.EnterpriseLibrary.Data报出源文件与当前应用程序不一致和创建dataconfiguration的配置节处理程序出错
- 温度场有限容积法程序入门之四:网格剖分.边界条件设置.迭代.导出后处理数据
- 基因数据处理17之使用scala对BWA运行结果进行各阶段程序时间提取和统计求和
- 根据XML配置规则导入Excel数据(三)准备验证工具类
- 初步完成了一个处理PEN3电子鼻气味传感数据的Matlab-GUI程序
- EA&UML日拱一卒-0基础学习微信小程序(8)-事件处理和数据绑定
- 处理字符数据--排序规则(Collation)
- 简单编写php验证类,教你如何写好php程序(含多种验证规则)
- Python表数据统计处理程序一枚
- AJAX提交到Handler.ashx一般处理程序返回json数据 (字符串拼接方式)
- MapReduce程序处理hdfs中数据乱码问题
- cenos5中安装处理hdf5和地理数据格式的程序的步骤
- C# 使用ajax把数据从页面传到一般处理程序中去
- 程序中在何处进行数据验证