struts注册信息验证的实现描述附带代码
来源:互联网 发布:多系统引导软件 编辑:程序博客网 时间:2024/04/30 11:08
struts注册信息验证的实现描述附带代码
今天我们主要是简单的学习了一些struts2的校验,在课堂上根据老师带领写的一个登录功能的校验的实现,自己写了一个注册功能的校验。使用了正则表达式来完成相应的校验。
首先我们先来看一下程序显示的效果,如下图所示:
点击注册按钮后,这几项都不符合我们自定的规则,所以会出现下面的结果~
下面我们来看以下代码分析:
首先我用重写validateXxx()方法来完成的。
ValidateXxx()方法中,其中xxx是Action对应的处理逻辑方法。
下面是对Action增加reg,并增加validateReg()方法。代码如下
import java.util.Calendar;
import java.util.Date;
import java.util.regex.Pattern;
import com.opensymphony.xwork2.ActionSupport;
public class RegAction extends ActionSupport{
private String uname;
private String upass;
private Integer uage;
private Date ubirth;
public String getUname() {
return uname;
}
public void setUname(String uname) {
this.uname = uname;
}
public String getUpass() {
return upass;
}
public void setUpass(String upass) {
this.upass = upass;
}
public Integer getUage() {
return uage;
}
public void setUage(Integer uage) {
this.uage = uage;
}
public Date getUbirth() {
return ubirth;
}
public void setUbirth(Date ubirth) {
this.ubirth = ubirth;
}
//重写validateReg方法,该方法仅校验Reg处理逻辑
public void validateReg() {
//判断
//如果用户名不为空,且不匹配长度为4~25的字母和数字组成的字符串
System.out.println(uname);
if(uname==null || !uname.trim().matches("[a-zA-Z0-9]{4,25}")){
System.out.println(uname);
addFieldError("uname","您输入的用户名必须是由字母和数字组成,并且长度必须是4~25之间!");
}
//如果密码不为空,切长度不匹配4~25的字母和数字组成的字符串
if(upass==null ||!Pattern.matches("\\w(4,25)",upass.trim())){
addFieldError("upass","您输入的密码必须是字母和数字,切长度在4~25之间!");
}
//如果年龄不在有效的年龄段内
if(uage>150 || uage<0){
addFieldError("uage","您输入的年龄不符合正常规则!");
}
if(uage>150 || uage<0){
Calendar end = Calendar.getInstance();
end.set(2050,2,21);
Calendar start = Calendar.getInstance();
start.set(1900,1,1);
//如果生日不为空,且生日不是一个有效的生日
if(ubirth==null || !(ubirth.after(end.getTime()) || ubirth.before(start.getTime()))){
addFieldError("ubirth","您输入的生日必须是在一个有效的时间段内!");
}
}
}
@Override
public void validate() {
System.out.println("对action中所有的方法进行检验");
}
public String reg() throws Exception {
System.out.println("进行业务操作处理............");
return SUCCESS;
}
}
下面是针对Action写的一个配置struts.xml的配置文件。
代码如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="test" extends="struts-default" namespace="/csdn">
<action name="reg" class="cn.csdn.hr.reg.action.RegAction" method="reg">
<result name="input">../error.jsp</result>
<result>../sc.jsp</result>
</action>
</package>
</struts>
以上都很基础的实现。
最后我们要写一个注册的页面。来接收和显示信息,并通过form表单将信息传递给action处理。从而达到校验用户注册信息的功能。
Jsp代码如下:
<div>
<h1>用户注册页面</h1>
<div>
<form action="${pageContext.request.contextPath}/csdn/reg.action" method="post">
用户名:<input type="text" name="uname"><br/>
密码:<input type="text" name="upass"><br/>
年龄:<input type="text" name="uage"><br/>
出生日期:<input type="text" name="ubirth"/><br/>
<input type="submit" value="注册"/>
</form>
</div>
</div>
- struts注册信息验证的实现描述附带代码
- struts注册信息验证的实现描述附带代码
- struts多文件上传的实现描述附带代码
- Struts实现注册(登陆)的验证过程
- 初学STRUTS---实现注册/登录/动态检测注册信息
- 验证码的获取和注册功能的代码实现
- 登录注册功能的实现,核心的验证代码
- ECshop中注册时的邮箱验证功能实现代码
- 注册页面 , 验证码倒计时代码的实现
- 用JavaScript实现用户登录验证、注册信息格式检验(附代码)
- 注册登录的验证代码
- Java注册邮箱激活验证实现代码
- Java注册邮箱激活验证实现代码
- Java注册邮箱激活验证实现代码
- Java注册邮箱激活验证实现代码
- js+jquery注册信息的基本验证
- 关于 注册信息表单的验证
- Struts 2+Hibernate实现完整登录注册(带验证)
- 关于eclipse运行java程序内存溢出的解决方法
- screen命令使用方法
- Android 进程和线程(一)
- 中彩低概率能否被改变
- 一起学习wordpress
- struts注册信息验证的实现描述附带代码
- cron表达式(quartz中时间表达式)
- 第三周任务2
- 能帮你职场突围的9个好习惯
- gvim菜单栏不显示了
- Qt中foreach的用法
- JMF实现将从摄像头和麦克读取的媒体信息保存成视频文件
- 淘宝网手机客户端开发(一)目录篇
- android资料总结