标签:
Struts的验证框架
一、字段验证器
1.简单的用户输入验证,在接收数据的Action同一个包下,创建一个***-validation.xml
文件,然后对验证规则进行配置示例:
<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.2//EN" "http://struts.apache.org/dtds/xwork-validator-1.0.2.dtd"> <validators> <field name="user.account"> <field-validator type="requiredstring"> <message>请输入账号</message> <!--返回的错误提示的消息 --> </field-validator> </field> </validators> 示例讲解: <validators> <validator type="int"> <param name="fieldName">user.age</param> <param name="min">18</param> <message>年龄必须在18岁以上,您输入的是${user.age}</message> </validator> <validators>
①<validators>元素仍然作为整个验证文件的根元素
②<validators>的子元素就是字段验证器<validator>元素的type属性就是这个字段验证器
  使用的验证器
③<validator>元素作为字段验证器使用时,一定要出现一个name属性为fieldName的<param>
  子元素,用以指明验证哪个字段
④<validator>元素的<messahe>子元素用来设置验证错误是返回的信息。在<message>元素中
  写出的文本将直接作为错误信息返回,如果<message>元素存在key属性,它将引用国际化信息
在返回错误信息的界面使用<s:fielderror/>来输出提示信息
二、动作验证器
示例如下:
<validator type="expression"> <param name="expression"><![CDATA[user.age >= user.account]]></param> <message>年龄必须在${user.account}岁以上,您输入的是${user.age}</message> </validator>
①<validators>元素仍然作为整个验证文件的根元素
  ②<validators>元素的<validator>子元素就是动作验证器。其中type属性为expression,
    引用了内置的表达式验证器,这个验证器需要一个name属性为expression的<param>子元素为其
	指定表达式
  ③<validator>元素的<messahe>子元素用来设置验证错误是返回的信息。在<message>元素中
  写出的文本将直接作为错误信息返回,如果<message>元素存在key属性,它将引用国际化信息
  
  在返回错误信息的界面使用<s:actionerror/>来输出提示信息
三、内建验证器
  
  ①类型转换错误验证器(conversion)
	conversion验证器用来验证转换类型是否出错,如果一个类型为int的
	参数接收到“19a”这个字串,报错
  ②整数验证器(int)(短整数验证器(short)和长整数验证器(long)用法相似)
    int验证器用来验证一个整数参数是否在指定的范围内。
	int验证器可以有两个参数
	min用来指定可接收范围的最小值
	max用来指定可接收范围的最大值
  ③日期验证器(date)
    date验证器用来验证一个日期型参数是否在指定的范围内。
    date验证器可以有两个参数
	min用来指定可接收范围的最小值
	max用来指定可接收范围的最大值
  ④双精度浮点验证器(double)
    double验证器用来验证一个双精度浮点型参数是否在指定的范围内。
	double验证器可以有4个参数:
	minInclusive用来指定课接收范围的最小值,包含给定值
	masInclusive用来指定课接收范围的最大值,包含给定值
	minExclusive用来指定课接收范围的最小值,不包含给定值
	minExclusive用来指定课接收范围的最大值,不包含给定值
  ⑤邮箱验证器(E-mail)
    e-mail验证器用来验证一个参数是否为邮箱地址
  ⑥URL验证器
    URL验证器用来验证一个参数是否为合法的URL
  ⑦必填验证器(required)
    required验证器用来验证一个参数是否不为null
  ⑧必填字符串验证器(requiredstring)
    requiredstring验证器用来验证一个字符串参数是否为空,且长度大于0
	requiredstring验证器只有一个参数:
	trim:是否去掉字符串两边的空白,默认为true
  ⑨字符串长度验证器(stringlength)
  stringlength验证器有3个参数
  maxLength:字符串长度的最大值
  minLength:字符串长度的最小值
  trim:是否去掉字符串两边的空白,默认为true
  ⑩正则表达式验证器(regex)
  regex验证器用来验证一个字符串是否符合一个正则表达式的要求
  regex验证器有3个参数:
  expression:必填参数,正则表达式。
  caseSensitive:是否检查大小写。
  trim:是否去掉字符串两边的空白,默认为true
标签:
原文地址:http://www.cnblogs.com/qingcong/p/5860602.html