struts2 validation.xml 验证规则代码解析
作者:yongche_shi 时间:2021-09-14 22:01:27
当使用struts2的validation.xml进行验证时,需要注意如下几个方面:
I.首先应该注意validation.xml的名字,一定要以Action的类名加“-validation.xml”作为文件名。入LoginAction-validation.xml。
II.LoginAction-validation.xml文件必须与Action类放在相同的目录下。
III.validation.xml文件中的<field-validator type="">标签的type属性,必须与VO中定义的属性的数据类型相同。
IV.在struts.xml文件中的<action>标签中,必须包含<result name="input">和<result name="success" >,否则会报找不到页(404)。
V.一段示例validation.xml代码:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE validators PUBLIC
"-//OpenSymphony Group//XWork Validator 1.0.2//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
<validators>
<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>
<!--<field name="user.age">
<field-validator type="int">
<param name="min">1</param>
<param name="max">150</param>
<message>年龄应在1到150之间</message>
</field-validator>
</field>
验证字符串为日期类型
<field name="user.birthday">
<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>
</field>
--></validators>
来源:http://blog.csdn.net/yongche_shi/article/details/45096685
标签:struts2,validation
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Android 中TextView中跑马灯效果的实现方法
2023-08-07 01:39:46
SpringBoot如何使用Fastjson解析Json数据
2023-11-25 11:55:58
![](https://img.aspxhome.com/file/2023/1/60041_0s.png)
Java编程调用微信接口实现图文信息推送功能
2023-11-25 07:20:47
详解AngularJs与SpringMVC简单结合使用
2023-10-22 04:19:08
SSM框架+Plupload实现分块上传大文件示例
2023-06-01 01:58:21
![](https://img.aspxhome.com/file/2023/8/63048_0s.png)
基于springboot 配置文件context-path的坑
2021-07-04 17:37:27
JavaWeb开发之使用jQuery与Ajax实现动态联级菜单效果
2023-11-28 19:46:08
![](https://img.aspxhome.com/file/2023/6/60466_0s.png)
Windows下Java环境变量配置详解
2022-02-04 05:56:02
java二维数组指定不同长度实例方法
2021-07-13 06:02:09
java 动态增加定时任务示例
2023-07-29 06:56:00
Java实现微信红包分配规则
2021-06-16 09:18:07
![](https://img.aspxhome.com/file/2023/8/66168_0s.png)
Java Web使用简单的批处理操作(记事本+Tomcat)
2021-08-13 10:08:33
![](https://img.aspxhome.com/file/2023/4/66074_0s.png)
C#实现系统休眠或静止休眠的方法
2023-12-19 01:55:29
详解Java变量与常量
2023-11-09 21:00:14
![](https://img.aspxhome.com/file/2023/5/59005_0s.png)
Java中synchronized锁的深入理解
2023-08-18 01:36:55
![](https://img.aspxhome.com/file/2023/1/64771_0s.webp)
java信号量控制线程打印顺序的示例分享
2023-05-09 12:27:38
windows系统配置Java开发环境变量
2022-03-07 23:28:07
![](https://img.aspxhome.com/file/2023/2/62152_0s.jpg)
用java开发dota英雄最华丽的技能(实例讲解)
2022-05-27 00:10:20
![](https://img.aspxhome.com/file/2023/8/62158_0s.jpg)
Spring Boot2深入分析解决java.lang.ArrayStoreException异常
2021-10-20 12:10:24
![](https://img.aspxhome.com/file/2023/6/67436_0s.jpg)
深入理解Spring Boot的日志管理
2021-11-16 09:58:40