[发明专利]一种基于JSR303的前后端同步正则校验方法有效
申请号: | 201711130896.5 | 申请日: | 2017-11-15 |
公开(公告)号: | CN107957871B | 公开(公告)日: | 2020-09-22 |
发明(设计)人: | 巫旭阳;范渊 | 申请(专利权)人: | 杭州安恒信息技术股份有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 杭州赛科专利代理事务所(普通合伙) 33230 | 代理人: | 郭薇;冯年群 |
地址: | 310052 浙江省杭州*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 jsr303 后端 同步 正则 校验 方法 | ||
本发明涉及一种基于JSR303的前后端同步正则校验方法,配置校验规则的唯一识别KEY、校验失败时的反馈符MESSAGE和校验注解使用的正则表达式,加载配置文件后,调用校验工具,触发校验器初始化,初始化正则表达式,从注解中读取配置的参数;校验参数是否合法,如是,从待校验参数中获取参数,逐个执行校验,参数合法,结束。本发明使得前后端使用同一份正则校验规则解决前后端不同步的问题,由配置文件配置正则表达式,代码中所有的校验应用同一份校验规则,解决统一修改和管理的问题,封装校验结果,有助于更简洁明了获取结果。
技术领域
本发明涉及电数字数据处理的技术领域,特别涉及一种同步前后端正则校验表达式的基于JSR303的前后端同步正则校验方法。
背景技术
在大多数场景下,参数校验是程序开发中必不可少的过程。用户在前端页面上填写表单时,前端程序会校验参数的合法性,当数据到了后端,为了防止恶意操作、保持程序的健壮性,后端同样需要对数据进行校验。
对于绝大多数应用,都存在前端和后台,免不了数据交互,前端提交数据的时候有必要对数据进行合法性校验,而且两端都需要校验,后端参数校验最简单的做法是直接在业务方法里进行判断,当判断成功之后再继续往下执行,这使得当有多个地方需要校验时,就需要在每一个地方调用校验程序。对于现有的解决方案,存在以下几点问题:
1、前后端没有显示的使用同样的校验规则;
2、后台对同一种会存在校验规则不统一;
3、使用自定义正则表达式校验难以统一维护。
这样的操作方式直接导致代码的耦合、冗余且不美观,运算量大,如果没有一种简洁的解决方式将给开发人员带来长期重复劳动,而且影响代码的可读性。
发明内容
为了解决现有技术中存在的问题,本发明提供一种优化的基于JSR303的前后端同步正则校验方法,使用同一份正则校验规则解决前后端不同步问题。
本发明所采用的技术方案是,一种基于JSR303的前后端同步正则校验方法,所述方法包括以下步骤:
步骤1:配置校验规则的唯一识别KEY、校验失败时的反馈符MESSAGE和校验注解使用的正则表达式;
步骤2:加载配置文件;
步骤3:调用校验工具,触发校验器初始化,初始化正则表达式,从注解中读取步骤1中配置的参数;校验参数是否合法,如是,则进行下一步,否则,进行步骤5;
步骤4:从待校验参数中获取参数,逐个执行校验;参数合法,则进行步骤6;否则,进行步骤5;
步骤5:抛出异常;
步骤6:结束。
优选地,所述步骤2中,包括以下步骤:
步骤2.1:程序从资源根路径读取资源文件;
步骤2.2:将JSON格式的数据转换成Java的内置数组对象,验证配置参数是否合法;若合法则通过,进行下一步,若不合法,以异常的方式抛出,读取配置文件失败,进行步骤6;
步骤2.3:将内置数组对象缓存在内存中。
优选地,所述步骤4中,包括以下步骤:
步骤4.1:判断参数是否能获取,若是,进行下一步,否则查找内置缺省校验参数;若存在内置缺省校验参数,则进行下一步,否则进行步骤5;
步骤4.2:调用校验方法;
步骤4.3:校验通过,则进行步骤6,否则,进行下一步;
步骤4.4:将错误信息设置在校验器的上下文中,进行步骤6。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州安恒信息技术股份有限公司,未经杭州安恒信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711130896.5/2.html,转载请声明来源钻瓜专利网。