StrutsWeb注册验证(仅作业)

register.jsp

首先我们通过创建register.jsp来定义注册页面。这里使用了struts框架中的格式省去了一些麻烦。创建注册页面所需要的一些元素。为后续做准备。
<%@ page language=”java” contentType=”text/html; charset=UTF-8”
pageEncoding=”UTF-8”%>
<%@taglib prefix=”s” uri=”/struts-tags” %>
<%@taglib prefix=”sx” uri=”/struts-dojo-tags” %>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>用户注册</title>

<sx:head extraLocales="utf-8"/>
</head>
<body style="margin:50px" bgcolor="pink">
<center><h2><label>注册页面</label></h2></center>
<center>
    <s:form action="register.action">
        <s:textfield name="name" label="*会员登录名"></s:textfield>
        <s:textfield name="username" label="真实姓名"></s:textfield>
        <s:password name="pass" label="*输入密码"></s:password>
        <s:password name="repass" label="*确认密码"></s:password>
        <s:radio list="#{'1':'男','0':'女' } " value="1" label="性别" name="sex"></s:radio>     
        <s:select list="{'江苏','北京','上海','天津'}" label="省份" name="province"></s:select>
        <s:textfield name="age" label="年龄"></s:textfield>
        <sx:datetimepicker name="birth" displayFormat="yyyy-MM-dd" label="生日" accesskey="false" language="utf-8"></sx:datetimepicker>
        <s:checkboxlist list="{'游泳','徒步','打乒乓球','看书','其他'}" name="love" label="爱好"></s:checkboxlist>
        <s:textfield name="mobile" label="手机"></s:textfield>
        <s:textfield name="email" label="电子邮箱"></s:textfield>
        <s:submit value="提交"></s:submit>
    </s:form>
</center>

</body>
</html>

RegisterAction.java

因为是使用struts框架所以要在src中定义Action。代码如下,并且返回成功页面
package org.crazyit.app.action;

import java.util.Date;

import com.opensymphony.xwork2.ActionSupport;

public class RegisterAction extends ActionSupport {
/**
*
*/
private static final long serialVersionUID = 1L;
private String name;
private String username;
private String pass;
private String repass;
private int age;
private int sex;
private String province;
private Date birth;
private String[] love;
private String mobile;
private String email;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPass() {
return pass;
}
public void setPass(String pass) {
this.pass = pass;
}
public String getRepass() {
return repass;
}
public void setRepass(String repass) {
this.repass = repass;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public int getSex() {
return sex;
}
public void setSex(int sex) {
this.sex = sex;
}
public String getProvince() {
return province;
}
public void setProvince(String province) {
this.province = province;
}
public Date getBirth() {
return birth;
}
public void setBirth(Date birth) {
this.birth = birth;
}
public String[] getLove() {
return love;
}
public void setLove(String[] love) {
this.love = love;
}
public String getMobile() {
return mobile;
}
public void setMobile(String mobile) {
this.mobile = mobile;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}

public String regist() {
    return "success";
}

}

RegisterAction-validation.xml

说道注册页面,怎么能少得了检验和验证呢。通过validators来验证数据的正确与否。
“-//Apache Struts//XWork Validator 1.0.3//EN”
“http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd”>

<validators>
    <field name="name">
        <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>会员登录名必须在${minLength}~${maxLength}</message>
        </field-validator>

    </field>
    <field name="pass">
        <field-validator type="requiredstring">
            <param name="trim">true</param>
            <message>请输入密码</message>
        </field-validator>
        <field-validator type="regex">
            <param name="regex"><![CDATA[(\w{6,12})]]></param>
            <message>密码必须在6~12位之间且只能是字母和数字</message>
        </field-validator>
    </field>
    <field name="repass">
        <field-validator type="requiredstring">
            <param name="trim">true</param>
            <message>请输入密码</message>
        </field-validator>
        <field-validator type="fieldexpression">
            <param name="expression"><![CDATA[pass==repass]]></param>
            <message>两次密码不相符</message>
        </field-validator>
    </field>
    <field name="age">
        <field-validator type="int">
            <param name="min">1</param>
            <param name="max">150</param>
            <message>年龄必须在${min}到${max}岁之间</message>
        </field-validator>
    </field>
    <field name="birth">
        <field-validator type="date">
            <param name="min">1900-01-01</param>
            <param name="max">2050-01-01</param>
            <message>生日日期必须在${min}到${max}之间</message>
        </field-validator>      
    </field>
    <field name="mobile">
        <field-validator type="requiredstring">
            <param name="trim">true</param>
            <message>电话号码不能为空</message>
        </field-validator>
        <field-validator type="regex">
            <param name="regex"><![CDATA[(\d{11})]]></param>
            <message>电话号码必须在11位之间且只能是数字</message>
        </field-validator>
    </field>
    <field name="email">
        <field-validator type="email">
            <message>电子邮件地址输入不合法</message>
        </field-validator>
    </field>

</validators>

result.jsp

最后就是结果页面,显示之前所有输入的数据。
<%@ page language=”java” contentType=”text/html; charset=UTF-8”
pageEncoding=”UTF-8”%>
<%@taglib prefix=”s” uri=”/struts-tags” %>




结果页面


注册成功














struts.xml

也是控制页面Action的页面在其中定义action通过来实现筛选控制达到页面的控制以及跳转。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
    "http://struts.apache.org/dtds/struts-2.3.dtd">

<struts>

    <package name="default"  extends="struts-default">

            <action name="register" 
                class="org.crazyit.app.action.RegisterAction"
                method="regist">
                <result name="success">/result.jsp</result>
                <result name="input">/register.jsp</result>
            </action>
    </package>
</struts>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值