<span style="font-size:18px;color:#c0c0c0;"><strong>①字段校验器配置风格</strong>:</span>
<!--内置校验器配置使用的元素,内置校验器在其中--> <validators>
<span style="white-space:pre"> </span><!--内置校验器配置一个字段的元素-->
<field name="被校验的字段">
<field-validator type="校验器的类型">
<!--用来像校验器传递参数,可以包含多个param-->
<param name="参数名">参数值</param> <message>校验失败的提示信息</message> </field-validator> </field> </validators>
使用内置校验器时需要在验证文件中配置校验器。命名规则是:Action类名-validation.xml。保存在与Action类相同的目录下。
<validators> <validator type="校验器的类型"> <!--用来像校验器传递参数,可以包含多个param--> <!--用来指定要校验的字段--> <param name="fildName">需要被校验的字段</param> <param name="参数名">参数值</param> <message>校验失败的提示信息</message> </validator> </validators>
该校验器的名称为required,校验字段是否为空,用于要求字段必须有值。在实际项目开发中对字段进行校验时,一般使用资费串长度校验器,常用参数是fieldName。
filedName:指定校验字段的名称,如果是字段校验风格的配置,则不用指定该参数。
④必填字符串校验器
requiredstring。要求字段是非空,长度大于0。
常用参数是:
fieldName:指定校验字段的名称,如果是字段校验风格则不用
trim:指定是否在校验之前对字符串进行整理,截取字符串前后空格,默认值为true。
⑤字符串长度校验器
stringlength。用于校验字段中字符串长度是否在指定的范围内。常用参数如下:
fieldname:指定校验字段的名称,如果是字段校验风格则不用
maxLength:最大长度,可选
minLength:最小长度
trim:默认为true
该校验器用于非字段校验器,格式如下:
<pre name="code" class="html"><validators> <validator type="stringlength"> <param name="fieldName">userName</param> <param name="maxLength">16</param> <param name="minLength">6</param> <message>姓名长度为${minLength}到${maxLength}个字符!</message> </validator> <span style="color:#ff0000;"> 该校验器用于字段校验器:</span> <field name="username"> <field-validator type="stringlength"> <param name="maxLength">16</param> <param name="minLength">6</param> <message>姓名长度为${minLength}到${maxLength}个字符!</message> </field-validator> </field>
</validators>
⑥整数校验器
int
常用参数:max,min
<validators>
<validator type="int"> <param name="fieldName">userName</param> <param name="max">16</param> <param name="min">6</param> <message>长度为${min}到${max}</message> </validator> 该校验器用于字段校验器: <field name="username"> <field-validator type="int"> <param name="max">16</param> <param name="min">6</param> <message>长度为${min}到${max}</message> </field-validator> </field> </validators>
⑦日期校验器
date
参数:fieldname,max,min
<validators> <validator type="date"> <param name="fieldName">userName</param> <param name="max">2020-10-10</param> <param name="min">1330-10-10</param> <message>年龄在${min}到${max}</message> </validator> 该校验器用于字段校验器: <field name="username"> <field-validator type="date"> <param name="max">16</param> <param name="min">6</param> <message>年龄在{minLength}到${maxLength}</message> </field-validator> </field> </validators>
使用日期格式校验器是,在jsp页面要遵循以下格式:
<s:datetimepicker displayFormat="yyyy-MM-dd" label="生日" name="birthday" />
⑧邮件地址校验器
<validators> <validator type="email"> <param name="fieldName">userName</param> <message>使用正确的格式</message> </validator> 该校验器用于字段校验器: <field name="username"> <field-validator type="email"> <message>请使用正确的格式</message> </field-validator> </field> </validators>
⑨网址校验器:
url
<validators> <validator type="url"> <param name="fieldName">userName</param> <message>使用正确的格式</message> </validator> 该校验器用于字段校验器: <field name="username"> <field-validator type="url"> <message>请使用正确的格式</message> </field-validator> </field> </validators>
<p>表达式校验器</p><p>expression</p>
<span style="font-size:18px;color:#ff0000;">字段表达式校验器:</span>
fieldexpression
参数:
fieldname
expression:该参数为一个逻辑表达式,使用OGNL表达式
<pre name="code" class="html"><validators> <validator type="fieldexpression"> <param name="fieldName">userPassword</param>
<param name="expression">
<!--验证两次输入的密码是否相同-->
<![CDATA[userPassword==ruserPassword]]>
</param> <message>两次密码不正确</message> </validator> 该校验器用于字段校验器: <field name="userPassword"> <field-validator type="fieldexpression"> <param name="expression">
<!--验证两次输入的密码是否相同-->
<![CDATA[userPassword==ruserPassword]]>
</param> <message>失败</message> </field-validator> </field> </validators>