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

本文详细介绍了使用Struts2框架进行用户注册信息校验的方法,包括整数、实数、日期、关系比较、邮箱、网址、访问、转换、正则表达式验证、是否为空、必须字符、字符长度限制等。通过配置默认验证规则集,确保用户输入的数据符合业务需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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 -->


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值