参数校验器
应用开发经常会遇到需要对输入进行校验的场景,下面是本框架提供的两种便捷的参数校验方式:
#
Assert断言Assert断言有许多校验方法可供选择,这些方法最后2个参数是用于组装断言失败的提示信息,前面的参数用于校验器判断入参。
- isNull 用于断言参数为Null,如果不为Null则抛出异常信息message
- notNull 用于断言参数不为Null,如果为Null则抛出异常信息message
- isTrue 用于断言参数为True,如果不为True则抛出异常信息message
- notTrue 用于断言参数不为True,如果为True则抛出异常信息message
- notEmpty 用于断言Map,Array[],Collection,Number,String类型的参数不为空,如果为空则抛出异常信息message
- noNullElements 用于断言Map,Array[],Collection类型的参数不存在值为Null的元素,如果存在Null元素则抛出异常信息message,注意只判断容器的元素,容器本身为Null不做处理
- doesNotContain 用于断言Map,Array[],Collection,String类型参数不包含某个元素或值,如果包含则抛出异常信息message
- contains 用于断言Map,Array[],Collection,String类型参数包含某个元素或值,如果不包含则抛出异常信息message
- matches 用于断言参数可以通过regex正则表达式校验,如果不能通过校验则抛出异常信息message
- equals 用于断言两个参数相同或相等,如果不相等则抛出异常信息message
- notEqual 用于断言两个参数不相同或不相等,如果相等则抛出异常信息message
- maxLength 用于断言Map,Array[],Collection,String类型参数的元素个数或长度小于max最大值,否则抛出异常信息message
- minLength 用于断言Map,Array[],Collection,String类型参数的元素个数或长度大于min最小值,否则抛出异常信息message
- lessThan 用于断言int,long,float,double,byte,short等数值类型参数小于max最大值,否则抛出异常信息message
- greaterThan 用于断言int,long,float,double,byte,short等数值类型参数大于min最小值,否则抛出异常信息message
- isChinese 用于断言字符串中全部为中文字符,否则抛出异常信息message
- isEnglish 用于断言字符串中全部为26个字母的英文字符,否则抛出异常信息message
- isMobile 用于断言字符串为有效的手机号码,否则抛出异常信息message
- isEmail 用于断言字符串为有效的email邮箱地址,否则抛出异常信息message
- isDate 用于断言字符串为指定的日期格式,否则抛出异常信息message
- isIp 用于断言字符串为IPv4地址格式,否则抛出异常信息message
- hasText 用于断言给定的值为字符串且不为空,否则抛出异常信息message
- hasLength 用于断言给定的值为字符串且有内容(包括空格),否则抛出异常信息message
- instanceOf 用于断言目标对象不为空且为指定的类型,否则抛出异常信息message
- assignable 用于断言目标类不为空且为指定类型或其子类,否则抛出异常信息message
- isIdCard 用于断言字符串为中国身份证格式,否则抛出异常信息message
请看下面的例子:
Assert断言还有更多用法,以上只列举部分重点内容。后续逐步完善更多具体的文档,并对重点内容进行专题描述。
#
Validator校验器Validator校验器继承自Jfinal,属于Controller的拦截器,只能搭配Controller使用。通常Controller需要校验入参的Action都需要一个校验器,校验器需要继承自Validator,请看下面的例子:
然后,需要在Controller中对应的Action上面通过@Before(FirstValidator.class)注解方式开启校验器。请看下面的应用方式:
Validator校验器还有更多用法,以上只列举部分重点内容。后续逐步完善更多具体的文档,并对重点内容进行专题描述。