oly-jso-validator是Java校验jso数据类型的一个小框架,基于fastjso做jso解析。
因为在做项目时,现在Java后台接口多半在body中使用jso做为数据传输,但是没找到比较想要的一款验证jso数据的框架。于是自己动手写了这么一个验证jso数据的小框架,希望弄帮到大家。
使用方式:
示例需验验证的jso字符串{"ame":"张三","age":101,"email":"","sex":"男","head":"https://ssss","idex":"b","roleIds":[1,2,6],"roles":[{"ame":"经理","grade":"12"},{"ame":"总监","grade":"13"}]}先写配置文件,配置文件中配置验证规则,配置在jso文件中[//数组为最顶层,这样可以配置多个验证规则{"ame":"001",//这个相当于命名空间或者id等,比如设置成url,通过url找到需验证请求是数据"validator":{"ame":{//这个是需要验证的字段"validators":[//这是验证规则{"validator":"otBlak",//验证类型,这个表示不能为空"code":"1001",//自定义错误码"message":"姓名不能为空"//自定义错误提示},{"validator":"miLegth","value":5},{"validator":"maxLegth","value":128}]},"age":{"validators":[{"validator":"max","value":"100"},{"validator":"mi","value":"10"}]},"email":{"validators":[{"validator":"email"}]},"sex":{"validators":[{"validator":"otNull"},{"validator":"iStrigArray","value":["男","女","保密"]}]},"head":{"validators":[{"validator":"url"}]},"idex":{"validators":[{"validator":"umber"}]},"roleIds":{"validators":[{"validator":"array"}],"odes":{//这个表示ode字段是个对象属性,其还有许多属性,然后下面的配置可以无限循环嵌套"validators":[{"validator":"otNull"},{"validator":"iteger"}]}},"roles":{"validators":[{"validator":"array"}],"odes":{//这个表示ode字段是个对象属性,其还有许多属性,然后下面的配置可以无限循环嵌套"ame":{"validators":[{"validator":"otBlak"},{"validator":"maxLegth","value":128}]}}}}},{"ame":"002","validator":{}}]Java代码读取配置文件然后验证jso//需要验证的jso,这里简单写了,如上面示例Strigjso="{\"ame\":\"\"}";//读取配置文件,初始化验证类ValidatorServicevs=ewValidatorService("classpath*:/validator/*.jso");//按命名去验证jso内容是否合法,返回空列表则合法,非空则有不合法数据List<ValidatorResult>list=vs.validate(jso,"001");目前支持验证类型[{"validator":"array"},{"validator":"boolea"},{"validator":"email"},{"validator":"equalsTo","value":"user.password"},{"validator":"iStrigArray","value":["1","2","3"]},{"validator":"iteger"},{"validator":"maxLegth","value":"50"},{"validator":"max","value":"50.5"},{"validator":"miLegth","value":"20"},{"validator":"mi","value":"20.0"},{"validator":"otBlak"},{"validator":"otNull"},{"validator":"umber"},{"validator":"regex","value":"","message":""},{"validator":"url"}]Mave坐标<depedecy><groupId>com.olyxiahui.framework</groupId><artifactId>oly-jso-validator</artifactId><versio>1.0.0</versio></depedecy>







评论