现在的位置: 首页 > 综合 > 正文

struts2表单验证里field-validator type值一共可以取哪些?都什么含义?

2018年01月28日 ⁄ 综合 ⁄ 共 3087字 ⁄ 字号 评论关闭

int 整数;
double 实数;
date 日期;
expression  两数的关系比较;
email Email地址;
url  web地址;
visitor 访问;
conversion 转换;

regex 正则表达式验证;
required 是否为空;
requiredstring 必须字符;
stringlength 输入字符长度限制;

<validators>   

  1. <field name="user.userName">   
  2.    <!-- 验证字符串不能为空 -->   
  3.    <field-validator type="requiredstring">   
  4.     <!-- 去空格 -->   
  5.     <param name="trim">true</param>   
  6.     <!-- 错误提示信息 -->   
  7.     <message>用户名不能为空</message>   
  8.    </field-validator>   
  9.      
  10.    <!-- 验证字符串长度 -->   
  11.    <field-validator type="stringlength">   
  12.     <param name="minLength">2</param>   
  13.     <param name="maxLength">20</param>   
  14.     <message>用户名长度应在218个字符间</message>   
  15.    </field-validator>   
  16. </field>   
  17.   
  18. <field name="user.password">   
  19.    <field-validator type="requiredstring">   
  20.     <param name="trim">true</param>   
  21.     <message>密码不能为空</message>   
  22.    </field-validator>   
  23.      
  24.    <field-validator type="stringlength">   
  25.     <param name="minLength">6</param>   
  26.     <param name="maxLength">18</param>   
  27.     <message>密码长度应在618个字符之间</message>   
  28.    </field-validator>   
  29. </field>   
  30.   
  31. <field name="user.age">   
  32.    <field-validator type="int">   
  33.     <param name="min">1</param>   
  34.     <param name="max">150</param>   
  35.     <message>年龄应在1150之间</message>   
  36.    </field-validator>   
  37. </field>   
  38. <!-- 验证字符串为日期类型 -->   
  39. <field name="user.birthday">   
  40.    <field-validator type="date">   
  41.     <param name="min">1900-01-01</param>   
  42.     <param name="max">2008-10-16</param>   
  43.     <message>出生日期应在1900-01-012008-10-16</message>   
  44.    </field-validator>   
  45. </field>   
  46. </validators>  

struts2校验框架预设的类在包com.opensymphony.xwork2.validator.validators中,同一目录下的default.xml中定义了field-validator中type的名称和对应的处理类。

default.xml

<!-- START SNIPPET: validators-default -->

<validators>

<!-- 必须输入 -->

  <validator name="required" class="com.opensymphony.xwork2.validator.validators.RequiredFieldValidator"/>

<!-- 必须输入字符串 -->

  <validator name="requiredstring" class="com.opensymphony.xwork2.validator.validators.RequiredStringValidator"/>

<!-- 校验int型 -->

  <validator name="int" class="com.opensymphony.xwork2.validator.validators.IntRangeFieldValidator"/>

  <validator name="double" class="com.opensymphony.xwork2.validator.validators.DoubleRangeFieldValidator"/>

  <validator name="date" class="com.opensymphony.xwork2.validator.validators.DateRangeFieldValidator"/>

<!--  -->

  <validator name="expression" class="com.opensymphony.xwork2.validator.validators.ExpressionValidator"/>

<!--  -->

  <validator name="fieldexpression" class="com.opensymphony.xwork2.validator.validators.FieldExpressionValidator"/>

  <validator name="email" class="com.opensymphony.xwork2.validator.validators.EmailValidator"/>

  <validator name="url" class="com.opensymphony.xwork2.validator.validators.URLValidator"/>

<!--  -->

  <validator name="visitor" class="com.opensymphony.xwork2.validator.validators.VisitorFieldValidator"/>

<!--  -->

  <validator name="conversion" class="com.opensymphony.xwork2.validator.validators.ConversionErrorFieldValidator"/>

  <validator name="stringlength" class="com.opensymphony.xwork2.validator.validators.StringLengthFieldValidator"/>

  <validator name="regex" class="com.opensymphony.xwork2.validator.validators.RegexFieldValidator"/>

</validators>

<!-- END SNIPPET: validators-default -->

抱歉!评论已关闭.