Struts2校验器类型

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Struts2校验器类型

10.3 验证器类型

可以把验证器类型分为两种:字段验证器和动作验证器。其中,字段验证器就像前面演示的那样,只验证提交的表单内的单个字段;而动作验证器一般验证提交的表单内的多个字段的关系,比如,录入产品信息的时候,产品的进价不能高于售价。

无论是哪种验证器,都需要考虑以下几个问题:

∙验证谁?

∙使用什么条件验证?

∙不满足条件显示什么结果?

∙不满足验证条件时显示的结果出现在页面的什么位置?

10.3.1字段验证器

字段验证器用来验证提交的表单内的单个字段,如同前面的示例,在验证文件里:

java代码:

查看复制到剪贴板打印

1.

2.

3.

4. 18

5. 年龄必须在18岁以上,您输入的是${user.age}

6.

7.

8.

元素作为整个验证文件的根元素。

元素的子元素就是字段验证器,元素的name属性就是这个字段验证器要验证的哪个字段。

∙一个元素可以有多个元素。

∙每一个元素是对这个字段的一种验证条件,它的type属性就是具体的验证器,在这里引用了内置的int验证器。

∙还可以给元素添加子元素来设置验证条件的参数,添加子元素来设置验证错误时返回的信息。在元素中写出的文本将直接作为错误信息返回,如果元素存在key属性,它将引用国际化信息。

除了以上的这种写法,还有另外一种注册的方式,虽然写出来的xml配置不同,但是所需要的参数,以及运行时所起的作用都和以上的写法一模一样:

java代码:

查看复制到剪贴板打印

1.

2.

3. user.age

4. 18

5. 年龄必须在18岁以上,您输入的是${user.age}

6.

7.

元素仍然作为整个验证文件的根元素。

元素的子元素就是字段验证器,元素的type属性就是这个字段验证器要使用的验证器。

元素作为字段验证器使用时,一定要出现一个name属性为fieldName的子元素,用以指明验证哪个字段。

元素的子元素用来设置验证错误时返回的信息。在元素中写出的文本将直接作为错误信息返回,如果元素存在key属性,它将引用国际化信息。

无论是哪种写法,如果不满足验证的条件,它将显示在对应的文本框的上边。

10.3.2动作验证器

与字段验证器只验证单个字段相比,动作验证器应用于整个动作(Action),一般用于验证提交的表单内的多个字段的关系,当然也可以验证单个字段。

为了示例,假定要求输入的帐号也为数字,并要求输入的age值要大于帐号的值。那么在验证文件里,可以按照如下写法,示例代码如下:

java代码:

查看复制到剪贴板打印

1.

2. =user.account]]>

3. 年龄必须在${user.account}岁以上,您输入的是${user.age}

4.

元素作为整个验证文件的根元素。

元素的< validator>子元素就是动作验证器。其type属性为expression,引用了内置的表达式验证器,这个验证器需要一个name属性为expression的子元素为其指定表达式。

元素的子元素用来设置验证错误时返回的信息。在元素中写出的文本将直接作为错误信息返回,如果元素存在key属性,它将引用国际化信息。

注意:上面出现的是xml的通用语法,里面的内容不需要对特殊字符进行转义。

对于动作验证器,它返回的错误信息并不会直接显示在对应的文本框上方,需要使用标签去引用。如:

java代码:

查看复制到剪贴板打印

1.用户注册

2.


3.

4.


5.

6.

7.

8.

9.

10.

这样,如果动作验证器条件不满足的话,错误信息会出现在的位置上。

图10.5 使用动作验证器

私塾在线网站原创《研磨struts2》系列

相关文档
最新文档