微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

smart-validate 1. 单个参数验证2. 校验整个对象通过注解3.校验不通过时处理三、部署说明欢迎使用其他系列产品 轻量级服务端校验框架

程序名称:smart-validate 1. 单个参数验证2. 校验整个对象通过注解3.校验不通过时处理三、部署说明欢迎使用其他系列产品

授权协议: Apache

操作系统: 跨平台

开发语言: Java

smart-validate 1. 单个参数验证2. 校验整个对象通过注解3.校验不通过时处理三、部署说明欢迎使用其他系列产品 介绍

smart-validator

轻量级服务端校验框架

支持注解、功能齐全、使用简便

一、功能简介

主要提供便捷的后台数据校验功能支持单个字段或参数校验,也支持通过注解校验对象,用法简单。
提供基本的非空、长度、大小等校验方法,也提供一些特殊的正则校验、身份证、电话、邮箱、IP等校验方法

二、用法介绍

目前提供以下校验方法支持后续持续扩展

注解 说明
NotNull 非空校验
Max 最大值校验
Min 最小值校验
MaxLength 最大长度校验,支持集合、数组长度校验
MinLength 最大长度校验,支持集合、数组长度校验
IdCard 身份证校验
Email 邮箱格式校验
Phone 手机号校验
IP IP地址校验
Chinese 中文校验
English 英文校验
Regex 自定义正则校验
Date 日期格式校验

1. 单个参数验证

ValidateUtils.is("a").notNull();

ValidateUtils.is("test").maxLength(20).minLength(4);

ValidateUtils.is(50).min(20).max(60);

通过and()支持连写(连写直接切换校验对象)

ValidateUtils.is("a").notNull().and("test").maxLength(20).minLength(4).and(50).min(20).max(60);

支持自定义错误信息

ValidateUtils.is("test").maxLength(20,"最大长度不能超过20个字").minLength(4,"最小长度不能少于4个字");

2. 校验整个对象(通过注解)

在类的属性上定义注解,同时支持自定义错误信息

public class User {

    @NotNull(msg = "姓名不能为空")
    @MaxLength(value = 20,msg = "姓名不能超过20个字")
    private String name;

    private Date birthday;

    @IdCard
    private String idcard;

    @Max(30)
    @Min(12)
    private int age;

    @Email
    @MaxLength(50)
    private String email;

    @Phone
    private String phone;

    @Regex("[1-9]([0-9]{5,11})")
    private String qq;

    //get... set..
}

然后调用ValidateUtils.check()方法即可

try {
    //....
    ValidateUtils.check(user);
    //.....
}catch (ParamsException e){
    throw e;
}catch (Exception e){
    //...
}

同样支持连写

ValidateUtils.check(user).and("2017-06-05").date("yyyy-MM-dd");

3.校验不通过时处理

校验不通过会抛出ParamsException(运行时异常)

使用时一般不需要特殊处理,由于后台校验是安全性校验,一般用于拦截非法操作,所以不用友好提示,所以推荐不做任何捕获或者特殊处理,如外层有catch,建议单独捕获后向上抛出。
如果想做异常捕获,也可以自行在代码添加try/catch(不推荐),或者添加全局的拦截器捕获该类异常。

三、部署说明

获取最新版本的jar包即可-下载地址,然后添加进项目的依赖库中。
项目使用maven构建,也可以下载源码自行编译

    1.7.13
    2.6
    3.2.2
    1.9.3




        org.slf4j
        slf4j-api
        ${slf4j.version}


        org.slf4j
        slf4j-log4j12
        ${slf4j.version}


        commons-lang
        commons-lang
        ${commons.lang.version}


        commons-collections
        commons-collections
        ${commons.collections.version}


        commons-beanutils
        commons-beanutils
        ${commons.beanutils.version}

欢迎使用其他系列产品

melon-idfactory 传送门

smart-validate 1. 单个参数验证2. 校验整个对象通过注解3.校验不通过时处理三、部署说明欢迎使用其他系列产品 官网

https://gitee.com/fetech-framework/smart-validator

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐