spv 简单的 Spring 参数验证库开源项目

我要开发同款
匿名用户2019年09月19日
120阅读

技术信息

开源地址
https://github.com/fashionbrot/mars-validated
授权协议
未知

作品详情

sprigmvcsprigboot简单轻量好用的参数验证。支持基本类型查参数验证。支持自定义注解的参数验证。使用简单方便。

使用4步配置

1、导入jar

<depedecy><groupId>com.github.fashiobrot</groupId><artifactId>mars-validated</artifactId><versio>1.0.0</versio></depedecy>

2、使用注解

2.1sprigboot配置

@SprigBootApplicatio@EableValidatedCofig(fileName="valid_zh_CN")publicclassDemoApplicatio{publicstaticvoidmai(Strig[]args){SprigApplicatio.ru(DemoApplicatio.class,args);}}

2.2sprig配置

@Compoet@Cofiguratio@EableValidatedCofig(fileName="valid_zh_CN")publicclassCofig{}

3、使用@Validated开启接口验证@Email验证邮箱格式

@CotrollerpublicclassDemoCotroller{@AutowiredprivateTestServicetestService;@RequestMappig("/emailCheck")@ResposeBody@Validated//注意此处publicStrigdemo(@EmailStrigabc,){returtestService.test(abc);}}@CotrollerpublicclassDemoCotroller{@AutowiredprivateTestServicetestService;@RequestMappig("/idcardCheck")@ResposeBody@ValidatedpublicStrigdemo(IdCardModelidCardModel){returtestService.test("ac");}@RequestMappig("/idcardCheck2")@ResposeBodypublicStrigdemo2(IdCardModelidCardModel){returtestService.test2("ac");}}**此处支持多继承验证***publicclassIdCardModelextedsBaseModel{@IdCardprivateStrigidCardModel;publicStriggetIdCardModel(){returidCardModel;}publicvoidsetIdCardModel(StrigidCardModel){this.idCardModel=idCardModel;}}@ServicepublicclassTestService{@Validatedpublicvoidtest2(@IdCardStrigabc){}}

4、自定义实现全局异常处理

拦截com.fashio.spv.validated.exceptio.ValidatedExceptio

@RestCotrollerAdvicepublicclassGlobalExceptioHadler{@ExceptioHadler(ValidatedExceptio.class)@ResposeStatus(HttpStatus.OK)publicRespMessageValidatioExceptio(ValidatedExceptioe){returewRespMessage(-100,e.getMsg());}}

validated参数验证

使用环境

sprig4.0及以上jdk1.8及以上

AotatioSupporteddatatypes作用NotBlakStrig验证Strig字符串是否为空NotNullStrig,Object,Iteger,Log,Double,Short,Float,BigDecimal,BigIteger验证对象是否为空AssertFalseBoolea,boolea,Strig只能为falseAssertTrueBoolea,boolea,Strig只能为trueBakCardStrig验证银行卡CreditCardStrig验证信用卡DefaultIteger,Double,Log,Short,Float,BigDecimal,Strig设置默认值DigitsStrig验证是否是数字EmailStrig验证是否是邮箱IdCardStrig验证是否是身份证,验证18岁Legthit,log,short,double,Iteger,Log,Float,Double,Short,Strig验证长度PatterStrig正则表达式验证PhoeStrig验证手机号是否正确Sizeit,log,short,Iteger,Log,Short验证大小值支持自定义注解如下:1、实现CostraitValidator此接口2、自定义注解如下:CustomCostraitValidator.class,CustomCostraitValidator2.class实现类可多个,至少有一个@Documeted@Target({ElemetType.FIELD,ElemetType.PARAMETER})@Retetio(RetetioPolicy.RUNTIME)@Costrait(validatedBy={CustomCostraitValidator.class,CustomCostraitValidator2.class})public@iterfaceCustom{Strigmsg()default"com.spv.valid.Custom.msg";itmi();}3、代码实现publicclassCustomCostraitValidatorimplemetsCostraitValidator<Custom,Strig>{@OverridepublicbooleaisValid(Customcustom,Strigvar1){/***自定义方法*/itmi=custom.mi();/***value*/System.out.pritl(var1);/***returtrue则验证成功false验证失败*/returtrue;}}

功能介绍

springmvc springboot 简单轻量好用的参数验证。支持基本类型查参数验证。支持自定义注解的参数验证。使用简单方便。 使用4步配置 1、导入jar
<depen...

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论