ITEEDU

Struts Gossip: 内建验证器

Validator内建了许多基本验证器,以下说明几个常用的验证器作用与基本设定方式:

required

验证指定的字段内容是否填写,可判定只有空白的情况,设定范例如下:
 <field property="email" depends="required"/>

mask

验证字段内容是否符合所设定的regular expression,设定范例如下: 
 <field property="zipCode" depends="mask"> 
    <arg0 key="pre.displayname0"/> 
    <var> 
        <var-name>mask</var-name> 
        <var-value>^\d{5}\d*$</var-value> 
    </var> 
</field>

email

检查电子邮件格式,例如: 
 <field property="mail" depends="email"> 
    <arg0 key="pre.displayname0"/> 
</field> 

creditCard

检查信用卡号码格式,例如:
 <field property="cardnumber" depends="creditCard"> 
    <arg0 key="pre.displayname0"/> 
</field>

maxLength、minLength

验证字段的字符数是否符合设定的最大长度或最小长度限定,下面是maxLength的设定范例:
 <field property="message" depends="maxLength"> 
    <arg0 key="pre.displayname0"/> 
    <arg1 key="pre.displayname1"/> 
    <var> 
        <var-name>maxLength</var-name> 
        <var-value>100</var-value> 
    </var> 
</field> 

range

验证字段的值是否在设定的范围,例如:
 <field property="priority" depends="range"> 
    <arg0 key="pre.displayname0"/> 
    <var> 
        <var-name>max</var-name> 
        <var-value>100</var-value> 
    </var> 
    <var> 
        <var-name>min</var-name> 
        <var-value>0</var-value> 
    </var> 
</field> 

date

验证字段内容是否符合日期格式,例如: 
 <field property="date" depends="date"> 
    <arg0 key="pre.displayname0"/> 
    <var> 
        <var-name>datePattern</var-name> 
        <var-value>MM/dd/yyyy</var-value> 
    </var> 
</field>
datePattern不检查在日期上是否补足0,例如7/23/1978是可以的,如果使用datePatternStrict则要补上0,例如 07/23/1978。

byte、short、integer、long、float、double

检查字段值数据型态,例如: 
 <field property="number" depends="integer"> 
    <arg0 key="pre.displayname0"/>
</field>