本文為原創(chuàng),如需轉(zhuǎn)載,請注明作者和出處,謝謝!
上一篇:Struts1.x系列教程(11):Validator驗證框架高級應(yīng)用
Struts2教程4:使用validate方法驗證數(shù)據(jù)
Struts2教程5:使用Validation框架驗證數(shù)據(jù)
下面列出了Validator框架的預(yù)定義驗證(Struts的版本號為1.2.9)。
Validator
|
變量
|
引發(fā)條件
|
required
|
|
字段只有空格
|
validwhen
|
test
|
test條件失敗(詳見下一節(jié))
|
minlength
|
minlength
|
字段的字符數(shù)小于minlength
|
maxlength
|
maxlength
|
字段的字符數(shù)大于maxlength
|
mask
|
mask
|
字段值不匹配mask所指的個正則表達(dá)式
|
byte、short、integer、long、float、double
|
|
字段值無法轉(zhuǎn)換為這些數(shù)據(jù)類型
|
date
|
datePattern
或
datePatternStrict
|
字值值不能按著指定的格式轉(zhuǎn)換為日期類型
|
intRange、floatRange、doubleRange
|
min、max
|
字段值不在指定的范圍內(nèi)
|
creditCard
|
|
字段值不是一個信譽(yù)卡號
|
email
|
|
字段值不是一個合法的email
|
url
|
allowallschemes、
allow2slashes、
nofragments、
schemes
|
字段不是一個URL
|
關(guān)于Validator框架標(biāo)準(zhǔn)驗證的詳細(xì)信息,讀者可以訪問如下的URL:
http://struts.apache.org/1.2.9/userGuide/dev_validator.html
下面來舉一個validwhen驗證的例子。
validwhen可以驗證當(dāng)前屬性和其他屬性的關(guān)系,如在驗證密碼時,要保證兩次輸入的密碼一致,驗證代碼如下:
<field property="password1" depends="validwhen">
<msg name="validwhen" key="error.password1.confirmation" />
<var>
<var-name>test</var-name>
<var-value>
(password1!= null) and (*this* == password)
</var-value>
</var>
</field>
使用validwhen也可以驗證嵌套和索引屬性,如下面的代碼所示:
<field property="field1" depends="validwhen">
<msg name="validwhen" key="error.field.message" />
<var>
<var-name>test</var-name>
<var-value>
(*this* == field2.name) and (*this* != field3[1])
</var-value>
</var>
</field>
其中*this*表示當(dāng)前屬性的值。
下一篇:Struts1.x系列教程(13):國際化
新浪微博:http://t.sina.com.cn/androidguy 昵稱:李寧_Lining