[发明专利]输入校验的方法在审
申请号: | 201910853494.0 | 申请日: | 2019-09-10 |
公开(公告)号: | CN110673838A | 公开(公告)日: | 2020-01-10 |
发明(设计)人: | 李长彬 | 申请(专利权)人: | 四川新网银行股份有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F8/73 |
代理公司: | 51282 成都智言知识产权代理有限公司 | 代理人: | 濮云杉 |
地址: | 610094 四川省成都市成都*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 校验 字段 错误信息 运维 逻辑代码 统一规范 校验方式 字段属性 开发 重复 创建 保证 统一 学习 | ||
本发明涉及输入校验的方法,包括:A.根据Java系统中校验字段的不同校验类型分别设置相应的Java注解,在Java注解中包括与各校验类型对应的字段属性和错误信息;B.创建校验方法,校验方法通过Java对象域机制获取用户对校验字段输入的具体值和该校验字段的Java注解,并根据该校验字段的Java注解对所述具体值进行校验,如果校验不通过则抛出异常,在异常中包含Java注解中对应的错误信息。本发明输入校验的方法,大幅度降低了开发成本和运维成本,不需要开发人员重复编写繁琐的校验逻辑代码,也不需要开发人员和运维人员学习复杂的规范,实现了对各种校验字段的统一校验方式,保证了代码的统一规范。
技术领域
本发明涉及数据处理的方法,具体讲是输入校验的方法。
背景技术
在软件系统的开发过程中,经常需要对用户的输入参数进行必要的有效性校验,例如输入参数是否为空、长度是否超长、格式是否符合约定、数据范围等。而这些校验的代码与业务代码混合在一起,让整个业务代码显得臃肿,而且频繁的编写这类校验代码是非常枯燥和消耗时间。因此需要以一种优雅的方式实现参数的校验,让业务代码和校验逻辑分开,使开发人员不再编写重复的校验逻辑。
目前的解决方案主要是通过Hibernate Validator框架实现了JSR 380规范中所有内置约束的实现。
在其中Hibernate Validator框架的作用包括:
1.业务代码与校验逻辑之间进行分离,降低了耦合度。
2.统一了校验规范,降低了重复的代码。
3.开发人员将更专注于业务的实现,将这些繁琐的校验逻辑交由HibernateValidator进行处理。
而Hibernate Validator框架存在的不足包括:
1.在校验没有通过的情况下,会对外抛出异常。需要在使用过程中人工捕获异常并对异常信息进行定制处理,这种方式在分布式场景下增加了交互难度和开发人员的工作量。
2.如果框架本身存在BUG导致业务中断,则需要提交BUG到开源社区在后续版本进行修复。很明显这种修复是一个漫长的过程,不能满足互联网金融科技快速迭代的需求,存在风险不可控的问题。
3.需要开发人员及运维人员了解JSR 380规范中所有内置约束规范,增加了学习成本。
发明内容
本发明提供了一种输入校验的方法,降低开发成本和运维成本,避免开发人员重复编写繁琐的校验逻辑代码,同时也防止不同开发人员不同的校验方式导致代码混乱而出现不必要的风险。
本发明输入校验的方法,包括:
A.根据Java系统中校验字段的不同校验类型分别设置相应的Java注解,在Java注解中包括与各校验类型对应的字段属性和错误信息;
B.创建校验方法,校验方法通过Java对象域机制获取用户对校验字段输入的具体值和该校验字段的Java注解,并根据该校验字段的Java注解对所述具体值进行校验,如果校验不通过则抛出异常,在异常中包含Java注解中对应的错误信息。
本发明通过Java的注解机制实现了代码中业务逻辑和校验逻辑的解耦,不需要再编写重复而繁琐的校验逻辑,同时结合异常类型对外输出对应错误码和错误描述,结合对外统一返回响应对象,实现了系统上下游的友好交互。
具体的,校验字段的校验类型包括是否允许为空、长度和范围,并对所述校验类型分别设置对应的字段属性。上述3中校验类型能够覆盖常规的各种输入校验形式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川新网银行股份有限公司,未经四川新网银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910853494.0/2.html,转载请声明来源钻瓜专利网。