首页 > 应用开发 > IT综合 > validator 验证框架(学习笔记)
vlidator框架的使用:配置文件属性说明. 相关架构的关系,及框架的具体实现.
[@more@]Validator框架提供了基本的、通用的验证规则,对Struts应用以及非Struts应用都适用,org.apache.commons.validator.GenericValidator类提供了一组实现这些规则的静态方法。
目前 GenericValidator 提供了
isBlankOrNull(java.lang.String value) : 检查是否为空值,及去掉空白后长度是否大于零
isByte(java.lang.String value) : 是否可以转成 byte
isCreditCard(java.lang.String value) : 是否为正确的信用卡号
isDate(java.lang.String value, java.util.Locale locale) : 是否为有效的日期, 可依照区域别判断
isDate(java.lang.String value, java.lang.String datePattern, boolean strict) : 是否为有效的日期, 可输入日期格式, 是否需要完全符合
isDouble(java.lang.String value) : 是否可以转成 double
isEmail(java.lang.String value) : 是否为有效的 Email
isFloat(java.lang.String value) : 是否可以转成 float
isInRange(double value, double min, double max) : 输入数值是否在此区间 ( double )
isInRange(float value, float min, float max) : 输入数值是否在此区间 ( float )
isInRange(int value, int min, int max) : 输入数值是否在此区间 ( int )
isInRange(short value, short min, short max) : 输入数值是否在此区间 ( short )
isInt(java.lang.String value) : 是否可以转成 int
isLong(java.lang.String value) : 是否可以转成 long
isShort(java.lang.String value) : 是否可以转成 short
matchRegexp(java.lang.String value, java.lang.String regexp) : 是否符合输入的 Regular Expression
maxLength(java.lang.String value, int max) : 长度不得大于输入值
minLength(java.lang.String value, int min) : 长度不得小于输入值 我认为最好用的就是 matchRegexp 可以设定成各式各样的判断.
在struts框架中定义了专门用于验证表单字段的org.apache.struts.validator.FieldChecks类,它提供了和GenericValidator类似的方法。validateMask()类似GenericValidator类的matchRegexp ()方法。
FieldChecks类实现了具体的验证逻辑。在对表单字段进行验证时,会调用FieldChecks类的相关方法,如验证失败,就会创建包含错误消息的ActionMessage对象,并把该对象添加到ActionMessages集合对象中。
1.
2.
3.
4.元素,
5.
6.
7.
Validator插件,当应用启动时,struts框架会加载validatorplugin 插件并调用它的init()方法,init()根据pathnames属性,加载相应的validator-rules.xml和validation.xml文件,把验证信息读入到内存中。
Validator采用ActionForm类的两个子类:org.apache.struts.validator.DynaValidatorForm和ValidatorForm及其子类DynaValidatorActionForm and ValidatorActionForm
ValidatorForm and ValidatorActionForm的区别
Struts配置文件的action元素的name属性 | Struts配置文件的action元素的path属性 |
validator.xml文件的元素的name属性 | validator.xml文件的元素的name属性 |
使用path的方式可以对应于不同的Action对FORM使用不同的验证规则
客户端进行验证:
Validator框架默认在web服务器进行验证。可以使用
html:javascript formName="loginForm" dynamicJavascript="true" staticJavascript="false"/>
国际化
Validator框架提供了对I18N的支持,无论是客户端验证,还是服务端验证,Validator框架都从应用的Resource Bundle中获得错误消息。Validator的
…….
…….
Validate框架步骤:
1. 创建Form类
2. 在sturts配置文件中配置和
3. 把Validator框架使用的消息文本添加到应用的Resource Bundle中。
4. 在validation.xml文件中为表单配置验证规则。
5. 在struts配置文件中配置ValidatorPlugIn插件
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/118026/viewspace-804665/ ,如需转载,请注明出处,否则将追究法律责任。