struts2中用xml配置文件去验证填写信息
xml名字是这样的 actionName-validation.xml 每个action 对应一个xml文件
xml文件和action放在同一个包下
后台验证用户输入是否符合格式要求,不符合,提交后返回对应提示。
//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>
<validator type="requiredstring">
<param name="fieldName">username</param>
<param name="trim">true</param>
<message>必须输入用户名</message>
</validator>
<validator type="regex">
<param name="fieldName">username</param>
<param name="expression"><![CDATA[(\w{6,20})]]></param>
<message>用户名长度必须为6至20之间</message>
</validator>
<validator type="requiredstring">
<param name="fieldName">password</param>
<param name="trim">true</param>
<message>必须输入密码</message>
</validator>
<validator type="regex">
<param name="fieldName">password</param>
<param name="expression"><![CDATA[(\w{6,20})]]></param>
<message>密码长度必须为6至20之间</message>
</validator>
<validator type="requiredstring">
<param name="fieldName">repassword</param>
<param name="trim">true</param>
<message>必须输入确认密码</message>
</validator>
<validator type="regex">
<param name="fieldName">repassword</param>
<param name="expression"><![CDATA[(\w{6,20})]]></param>
<message>确认密码长度必须为6至20之间</message>
</validator>
<validator type="fieldexpression">
<param name="fieldName">repassword</param>
<param name="expression"><![CDATA[(repassword==password)]]></param>
<message>密码和确认密码必须一致</message>
</validator>
<validator type="requiredstring">
<param name="fieldName">nickname</param>
<param name="trim">true</param>
<message>必须输入昵称</message>
</validator>
<validator type="regex">
<param name="fieldName">nickname</param>
<param name="expression"><![CDATA[([\u4e00-\u9fa5]{2,20})]]></param>
<message>昵称长度必须为2至20之间</message>
</validator>
<validator type="requiredstring">
<param name="fieldName">answer</param>
<param name="trim">true</param>
<message>必须输入密码保护答案</message>
</validator>
<validator type="regex">
<param name="fieldName">answer</param>
<param name="expression"><![CDATA[([\u4e00-\u9fa5]{5,50})]]></param>
<message>密码保护答案长度必须为5至50之间</message>
</validator>
</validators>
//HTML文件
<table width="1000" cellpadding="0" cellspacing="0" border="0">
<tr height="100">
<td colspan="2"> </td>
</tr>
<tr>
<td align="right" width="300" valign="top"><img src="data:image/register.gif"></td>
<td width="20"> </td>
<td valign="top">
<table width="600" border="1" cellpadding="0" cellspacing="0" style="background-color:#FFFFFF;BORDER-RIGHT:#cccccc 1px solid; BORDER-TOP:#cccccc 1px solid; BORDER-LEFT:#cccccc 1px solid; BORDER-BOTTOM:#cccccc 1px solid; BORDER-COLLAPSE:collapse">
<tr height="30">
<td colspan="3" align="center" background="image/main/l-bg1.jpg"><font color="#ffff66"><b>新博客注册</b></font></td>
</tr>
<tr height="30">
<td align="right" width="160">帐号 </td>
<td><input type="text" name="username"/>*</td>
<!--username 就是xml文件中对应的 <param name="fieldName">username</param> 名字-->
<td><s:fielderror><s:param>username</s:param></s:fielderror></td>
</tr>
<tr height="30">
<td align="right">密码 </td>
<td><input type="password" name="password"/>*</td>
<td><s:fielderror><s:param>password</s:param></s:fielderror></td>
</tr>
<tr height="30">
<td align="right">确认密码 </td>
<td><input type="password" name="repassword"/>*</td>
<td><s:fielderror><s:param>repassword</s:param></s:fielderror></td>
</tr>
<tr height="30">
<td align="right">昵称 </td>
<td><input type="text" name="nickname"/>*</td>
<td><s:fielderror><s:param>nickname</s:param></s:fielderror></td>
</tr>
<tr height="30">
<td align="right">密码保护问题 </td>
<td>
<select name="question">
<option value="你的生日">你的生日</option>
<option value="你的家乡">你的家乡</option>
<option value="你最喜欢的食物">你最喜欢的食物</option>
</select>*
</td>
<td><s:fielderror><s:param>question</s:param></s:fielderror></td>
</tr>
<tr height="30">
<td align="right">密码保护的答案 </td>
<td><input type="text" name="answer"/>*</td>
<td><s:fielderror><s:param>answer</s:param></s:fielderror></td>
</tr>
<tr height="30">
<td colspan="3" align="center"><input type="submit" value="提交"/>
<input type="reset" value="重置"/>
</td>
</tr>
</table>
</td>
</tr>
</table>
//action代码
public class Register extends ActionSupport{
private String username;
private String password;
private String repassword;
private String nickname;
private String question;
private String answer;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getRepassword() {
return repassword;
}
public void setRepassword(String repassword) {
this.repassword = repassword;
}
public String getNickname() {
return nickname;
}
public void setNickname(String nickname) {
this.nickname = nickname;
}
public String getQuestion() {
return question;
}
public void setQuestion(String question) {
this.question = question;
}
public String getAnswer() {
return answer;
}
public void setAnswer(String answer) {
this.answer = answer;
}
public String execute() throws Exception {
System.out.println(this.username);
System.out.println(this.password);
System.out.println(this.repassword);
System.out.println(this.nickname);
System.out.println(this.question);
System.out.println(this.answer);
return SUCCESS;
}
}
struts2中用xml配置文件去验证填写信息的更多相关文章
- asp.ne如何使用javascript去验证客户端信息,如果验证成功则送往服务器端处理,否则在客户端提示用户(不返回到服务器端处理)
一.问题 在网站一般都有很多地方需要用户去填写一些信息,然后用户点击提交,将信息送往后台储存到数据库中.在这一个过程我以前做法直接在button的click事件中来判断用户输入的数据是否完整和合法,虽 ...
- struts2 struts.xml配置文件详解
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN&quo ...
- spring-mvc.xml配置文件出错
在整合ssm三大框架的时候,配置spring-mvc.xml的文件的 <mvc:default-servlet-handler/> <mvc:annotation-driven /& ...
- Struts2第十篇【数据校验、代码方式、XML配置方式、错误信息返回样式】
回顾以前的数据校验 使用一个FormBean对象来封装着web端来过来的数据 维护一个Map集合保存着错误信息-对各个字段进行逻辑判断 //表单提交过来的数据全都是String类型的,birthday ...
- struts2框架xml验证
struts2验证分为3步: 1.获取需要验证的信息,使用同名属性,提供getter,setter方法.然后框架使用反射将值自动注入. 2.对信息进行验证,成功失败作出对应的选择. xml验证和手动验 ...
- struts2中struts.xml配置文件详解【未整理】
1. 深入Struts2的配置文件 本部分主要介绍struts.xml的常用配置. 1.1. 包配置: Struts2框架中核心组件就是Action.拦截器等,Struts2框架使用包来管 ...
- struts2.0中struts.xml配置文件详解
先来展示一个配置文件 <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration ...
- struts2中struts.xml配置文件详解
struts.xml的常用配置 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts ...
- 1-1 struts2 基本配置 struts.xml配置文件详解
详见http://www.cnblogs.com/dooor/p/5323716.html 一. struts2工作原理(网友总结,千遍一律) 1 客户端初始化一个指向Servlet容器(例如Tomc ...
随机推荐
- MapReduce中的分区方法Partitioner
在进行MapReduce计算时,有时候需要把最终的输出数据分到不同的文件中,比如按照省份划分的话,需要把同一省份的数据放到一个文件中:按照性别划分的话,需要把同一性别的数据放到一个文件中.我们知道最终 ...
- filter应用案例四:页面静态化
1 说明 你到"当当"搜索Java分类图书时,"当当"会去查询数据库!每天都有很多人去搜索"Java分类"的图书,每次都去访问数据库,这会有 ...
- Android Studio使用第三方类库
导入*.jar包 新建好了Android项目,添加一个第三方已经打包好的jar文件进你项目,下面就已添加一个odata4j的一个包 在项目中添加一个libs文件 直接通过COPY/PAST 把你下载的 ...
- javascript同名变量
我写个流程:在流程之前,必须写一下标识符是啥. 一句话,就是variable object的属性.而这个对象会被不同执行环境来决定. 比如全局环境下的variable object 就是 global ...
- POJ 2406 KMP/后缀数组
题目链接:http://poj.org/problem?id=2406 题意:给定一个字符串,求由一个子串循环n次后可得到原串,输出n[即输出字符串的最大循环次数] 思路一:KMP求最小循环机,然后就 ...
- Amazon S3云存储服务器的功能及编程接口
http://blog.csdn.net/iamshaofa/article/details/7877785/
- Manthan, Codefest 16
暴力 A - Ebony and Ivory import java.util.*; import java.io.*; public class Main { public static void ...
- 类型“System.Windows.Markup.IQueryAmbient”在未被引用的程序集中定义
错误 1 类型"System.Windows.Markup.IQueryAmbient"在未被引用的程序集中定义.必须添加对程序集"System.Xaml, ...
- HDOJ-1002
用java写大数,感觉就是BUG import java.math.*; import java.io.*; import java.util.*; public class Main{ public ...
- 【原】iOS学习39网络之数据请求
1. HTTP和HTTPS协议 1> URL URL全称是Uniform Resource Locator(统一资源定位符)通过1个URL,能找到互联网上唯一的1个资源 URL就是资源的地址.位 ...