Struts2 validation.xml 经典验证
在Struts2框架中,`validation.xml`是用于定义数据校验规则的重要配置文件,它允许开发者对Action类中的字段进行各种格式的验证,确保数据的完整性和正确性。通过`validation.xml`,我们可以实现对日期、字符、数字等多种类型的数据进行有效的验证。 ### Struts2经典验证规则详解 #### 1. 字符串验证:RequiredString和StringLength 在给定的部分内容中,我们首先看到的是对字符串类型的字段`user.strUsername`和`user.strPassword`的验证。`<field-validator>`标签被用来定义具体的验证规则。 - **RequiredString**:此规则检查字段是否为空或仅包含空格。如果字段未填写或者只包含空白字符,则验证失败。例如: ```xml <field-validator type="requiredstring"> <param name="trim">true</param> <message>用户名不能为空</message> </field-validator> ``` 这里的`<param name="trim">true</param>`表示在验证前会去除字符串两边的空白字符。 - **StringLength**:用于验证字符串长度是否在指定范围内。例如: ```xml <field-validator type="stringlength"> <param name="minLength">2</param> <param name="maxLength">20</param> <message>用户名长度应在2到20个字符之间</message> </field-validator> ``` 上述代码规定了`strUsername`字段的长度必须在2到20个字符之间,超出范围则验证失败。 #### 2. 数字验证:Int 对于整型数值字段,可以使用`int`类型的验证器。例如: ```xml <field-validator type="int"> <param name="min">1</param> <param name="max">150</param> <message>年龄应介于1到150岁之间</message> </field-validator> ``` 这将确保`age`字段的值为一个整数,并且在1到150的范围内,不满足条件时将显示错误消息。 #### 3. 日期验证:Date `date`类型的验证器用于检查日期格式的字段是否在指定的日期范围内。例如: ```xml <field-validator type="date"> <param name="min">1900-01-01</param> <param name="max">2008-10-16</param> <message>出生日期应在1900-01-01至2008-10-16之间</message> </field-validator> ``` 这里的`min`和`max`参数分别指定了日期的最小值和最大值,不在此范围内的日期将被视为无效。 ### 结论 通过以上分析,我们可以看到Struts2框架提供了丰富的验证规则,包括但不限于字符串、数字、日期等类型的验证,这些规则能够帮助开发者确保应用程序接收到的数据是合法且符合预期的,从而提高了应用的安全性和用户体验。开发者可以根据实际需求灵活地组合使用这些验证规则,以构建出更加健壮和可靠的Web应用程序。
<field name="user.strUsername">
<!-- 验证字符串不能为空 -->
<field-validator type="requiredstring">
<!-- 去空格 -->
<param name="trim">true</param>
<!-- 错误提示信息 -->
<message>用户名不能为空</message>
</field-validator>
<!-- 验证字符串长度 -->
<field-validator type="stringlength">
<param name="minLength">2</param>
<param name="maxLength">20</param>
<message>用户名长度应在2到18个字符间</message>
</field-validator>
</field>
<field name="user.strPassword">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>密码不能为空</message>
</field-validator>
<field-validator type="stringlength">
<param name="minLength">6</param>
<param name="maxLength">18</param>
<message>密码长度应在6到18个字符之间</message>
</field-validator>
</field>
- YuanMengDi2013-07-22这个好像缺点什么 不好使 啊
- kingslionzmy2012-09-10这个好像缺点什么 不好使 啊
- dreams19812012-02-16就是验证的XML部分,可惜不是完整的例子
- 粉丝: 1
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于Django和OpenCV的智能车视频处理系统.zip
- (源码)基于ESP8266的WebDAV服务器与3D打印机管理系统.zip
- (源码)基于Nio实现的Mycat 2.0数据库代理系统.zip
- (源码)基于Java的高校学生就业管理系统.zip
- (源码)基于Spring Boot框架的博客系统.zip
- (源码)基于Spring Boot框架的博客管理系统.zip
- (源码)基于ESP8266和Blynk的IR设备控制系统.zip
- (源码)基于Java和JSP的校园论坛系统.zip
- (源码)基于ROS Kinetic框架的AGV激光雷达导航与SLAM系统.zip
- (源码)基于PythonDjango框架的资产管理系统.zip