注册和验证的实现

Bean----Register.java       //注册使用的javaBean,可以接收参数,同时进行判断,并返回错误结果

package cn.mldn.ck.demo ;
import java.util.HashMap ;
import java.util.Map ;
public class Register {
 private String name ;
 private String age ; // 这种接收参数的时候如果是用户自己输入的情况下,就是使用String
 private String email ;
 private Map<String,String> errors = null ;
 public Register(){
  this.name = "" ;
  this.age = "" ;
  this.email = "" ;
  this.errors = new HashMap<String,String>() ;
 }
 public boolean isValidate(){
  boolean flag = true ;
  if(!this.name.matches("\w{6,15}")){
   flag = false ;
   this.name = "" ; // 清空原本的name内容
   this.errors.put("errname","用户名是6~15位的字母或数字。") ;
  }
  if(!this.email.matches("\w+@\w+\.\w+\.?\w*")){
   flag = false ;
   this.email = "" ; // 清空原本的name内容
   this.errors.put("erremail","输入的email地址不合法。") ;
  }
  if(!this.age.matches("\d+")){
   flag = false ;
   this.age = "" ; // 清空原本的name内容
   this.errors.put("errage","年龄只能是数字。") ;
  }
  return flag ;
 }
 public String getErrorMsg(String key){
  String value = this.errors.get(key) ;
  return value==null?"":value ;
 }
 public void setName(String name){
  this.name = name ;
 }
 public void setAge(String age){
  this.age = age ;
 }
 public void setEmail(String email){
  this.email = email ;
 }
 public String getName(){
  return this.name ;
 }
 public String getAge(){
  return this.age ;
 }
 public String getEmail(){
  return this.email ;
 }
}

index.jsp                    //注册信息填写页,同时对输入错误信息进行错误提示

<%@ page contentType="text/html" pageEncoding="GBK"%>
<html>
<head><title>www.mldnjava.cn,MLDN高端Java培训</title></head>
<%
 request.setCharacterEncoding("GBK") ;
%>
<jsp:useBean id="reg" scope="request" class="cn.mldn.ck.demo.Register"/>
<body>
<form action="check.jsp" method="post">
 用户名:<input type="text" name="name" value="<jsp:getProperty name="reg" property="name"/>"/><%=reg.getErrorMsg("errname")%><br>
 年&nbsp;&nbsp;龄:<input type="text" name="age" value="<jsp:getProperty name="reg" property="age"/>"/><%=reg.getErrorMsg("errage")%><br>
 E-MAIL:<input type="text" name="email" value="<jsp:getProperty name="reg" property="email"/>"/><%=reg.getErrorMsg("erremail")%><br>
 <input type="submit" value="注册">
 <input type="reset" value="重置">
</form>
</body>
</html>

check.jsp                   //将输入的表单数据自动赋值给javabean,同时进行验证,如果失败返回登录页面index.jsp,否则跳转到success.jsp

<%@ page contentType="text/html" pageEncoding="GBK"%>
<html>
<head><title>www.mldnjava.cn,MLDN高端Java培训</title></head>
<%
 request.setCharacterEncoding("GBK") ;
%>
<jsp:useBean id="reg" scope="request" class="cn.mldn.ck.demo.Register"/>
<jsp:setProperty name="reg" property="*"/>
<body>
<%
 if(reg.isValidate()){
%>
  <jsp:forward page="success.jsp"/>
<%
 } else {
%>
  <jsp:forward page="index.jsp"/>
<%
 }
%>
</body>
</html>

success.jsp                       //注册成功跳转页面,用来显示用户注册成功的信息

<%@ page contentType="text/html" pageEncoding="GBK" %>
<html>
 <head><title>www.hust.edu.cn, 关山口职业技术学院</title></head>
 <%  request.setCharacterEncoding("GBK"); %>
 <jsp:useBean id="reg" scope="request" class="cn.mldn.ck.demo.Register" />
 <body>
  用户名:<jsp:getProperty name="reg" property="name"/><br>
  年&nbsp;&nbsp;龄:<jsp:getProperty name="reg" property="age"/><br>
  E-Mail:<jsp:getProperty name="reg" property="email"/><br>
 </body>
</html>

原文地址:https://www.cnblogs.com/6502ck/p/3484386.html