使用StrutsValidator验证框架详细讲解
文章作者 100test 发表时间 2007:06:26 11:35:33
来源 100Test.Com百考试题网
框架能够克服在ActionForm Bean中以编程方式进行数据验证的局限,它允许Struts应用灵活的配置验证规则,无需编程。
Validator框架主要依赖两个JAR文件:jakarta-oro.jar和commons-validator,.jar
Validator框架采用两个基于XML的配置文件来配置验证规则。这两个文件为validator-rules.xml和validation.xml。
Validator-rules.xml文件保换了一组通用的验证规则,对所有的Struts应用都适用。一般情况下,没有必要修改该文件,除非需要修改或扩展默认的规则。
元素有7个属性:
Name属性:name属性指定验证规则的逻辑名,这个名字必须是唯一的。
Classname和method属性:classname和method属性分别指定实现验证规则逻辑的类和方法。
MethodParams:属性用来指定验证方法包含的参数,多个参数之间以逗号隔开。
Msg属性:msg属性指定来自于Resource Bundle中的消息key。当验证失败时,Validator框架将根据这个消息key到resource Bundle中查找匹配的消息文本。
Depends属性:depends属性指定在调用当前验证规则之前必须先调用的其他验证规则。
Validator框架提供了基本的,通用的验证规则,对struts应用以及非Struts应用都适用。Org.apache.commons.validator.GenericValidator类提供了一组实现这些规则的静态方法。
GenericValidator类的验证方法:
isBlankOrNull: 验证字段是否为null,或者长度是否为0。
isByte:验证字段是否可以被转换为有小的byte类型的数据。
isCreditCard:验证字段是否为有效的信用卡号。
isDate:验证字段是否为有效的日期。
isDouble:验证字段是否可以被转换成有效的double类型的数据。
isEmail:验证字段是否为有效的Email地址。
isFloat:验证字段是否可以被转换为有效的float类型的数据。
isInRange:雁阵谷子断时候借于最小值和最大值之间。
isInt:验证字段是否可以被转换为有效的int类型的数据。
isLong:验证字段是否可以被转换为有效的long类型的数据。
src="/java/js/wxgg_java.js">