`
chaoyi
  • 浏览: 290492 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

实例操作:注册验证

 
阅读更多

本章目标
通过JSP + JavaBean完成一个注册用户的验证功能。

package cn.demo2;
import java.util.HashMap;
import java.util.Map;
public class Register {//本类用于完成提交信息的验证
	private String name;//定义name属性
	private String age;//定义age属性,定义为String可以方便地使用正则验证
	private String email;//定义Email属性
	private Map<String,String> errors=null;//声明一个保存全部错误信息的Map集合
	public Register(){//构造方法中初始化属性
		this.name="";//初始化name属性
		this.age="";//初始化age属性
		this.email="";//初始化email属性
		this.errors=new HashMap<String, String>();//实例化Map对象,保存错误信息
	}
	public boolean isValidate(){//数据验证操作
		boolean flag=true;
		if(!this.name.matches("\\w{6,15}")){//验证name的内容是否合法
			flag=false;//修改标志位
			this.name="";//将不合法的内容清除
			errors.put("errname","用户名是6~15位的字母或数字。");//保存错误信息
		}
		if(!this.email.matches("\\w+@\\w+\\.\\w+\\.?\\w")){//验证email的内容是否合法
			flag=false;//修改标志位
			this.email="";//将不合法的内容清除
			errors.put("erremail","输入的email地址不合法");//保存错误信息
		}
		if(!this.age.matches("\\d+")){//验证age的内容是否合法
			flag=false;//修改标志位
			this.age="";//将不合法的内容清除
			errors.put("errage","年龄只能是数字");//保存错误信息
		}
		return flag;//返回标志位
	}
	public String getErrorMsg(String key){//取出对应的错误信息
		String value=this.errors.get(key);//从Map中根据key取得对应的value
		return value==null?"":value;//返回value对应的内容
	}
	/*
	 * 封装方法
	 * */
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getAge() {
		return age;
	}
	public void setAge(String age) {
		this.age = age;
	}
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	}
}

 

运行效果 —— 填写注册信息

<%@ page language="java" contentType="text/html" pageEncoding="utf-8"%>
<html>
<head>
	<title>注册表单页</title>
</head>
<% request.setCharacterEncoding("utf-8"); //解决中文乱码 %>
<jsp:useBean id="reg" scope="request" class="cn.demo2.Register" /><!-- request 范围的javaBean -->
<body>
<form action="check.jsp" method="post">
	用户名:<input type="text" name="name" value="<jsp:getProperty property="name" name="reg"/>">
	<%=reg.getErrorMsg("errname") %><br />
	年&nbsp;&nbsp;龄:<input type="text" name="age" value="<jsp:getProperty property="age" name="reg"/>">
	<%=reg.getErrorMsg("errage") %><br />
	E-Mail:<input type="text" name="email" value="<jsp:getProperty property="email" name="reg"/>">
	<%=reg.getErrorMsg("erremail") %><br />
	<input type="submit" value="注册"><input type="reset" value="重置">
</form>
</body>
</html>

效果图:

运行效果 —— 用户填写正确

<%@ page language="java" contentType="text/html" pageEncoding="utf-8"%>
<html>
<head>
	<title>信息验证页</title>
</head>
<% request.setCharacterEncoding("utf-8"); //解决中文乱码 %>
<jsp:useBean id="reg" scope="request" class="cn.demo2.Register" /><!-- request 范围的javaBean -->
<jsp:setProperty property="*" name="reg"/><!-- 为属性自动赋值 -->
<body>
<%
	if(reg.isValidate()){//进行验证
%>
		<jsp:forward page="success.jsp"></jsp:forward><!-- 跳转到成功页 -->
<%	
	}else{//验证失败
 %>
 		<jsp:forward page="index.jsp"></jsp:forward><!-- 跳转到注册页 -->
 <%	
	}
 %>
</body>
</html>

效果图:

 

运行效果 —— 用户名和email填写不正确

<%@ page language="java" contentType="text/html" pageEncoding="utf-8"%>
<html>
<head>
	<title>信息验证页</title>
</head>
<% request.setCharacterEncoding("utf-8"); //解决中文乱码 %>
<jsp:useBean id="reg" scope="request" class="cn.demo2.Register" /><!-- request 范围的javaBean -->
<body>
	用户名:<jsp:getProperty property="name" name="reg"/>
	年&nbsp;&nbsp;龄:<jsp:getProperty property="age" name="reg"/>
	E-mail:<jsp:getProperty property="email" name="reg"/>
</body>
</html>

效果图:

 

程序完成需要的页面

 
小结
本程序演示了一个简单的程序操作,JavaBean负责验证,JSP负责显示;
通过JavaBean可以进行一些操作的封装
  

  • 大小: 16.3 KB
  • 大小: 19.6 KB
  • 大小: 16.2 KB
  • 大小: 31.6 KB
分享到:
评论

相关推荐

    李兴华Java Web开发实战经典.pdf (高清版) Part1

    7.8、实例操作:注册验证 7.9、DAO设计模式 7.9.1、DAO设计模式简介 7.9.2、DAO开发 7.9.3、JSP调用DAO 7.10、本章摘要 7.11、开发实战讲解(基于Oracle数据库) 第8章 文件上传 8.1、smartupload上传...

    李兴华 Java Web 开发实战经典_带源码_高清pdf 带书签 上

    7.8、实例操作:注册验证 7.9、DAO设计模式 7.9.1、DAO设计模式简介 7.9.2、DAO开发 7.9.3、JSP调用DAO 7.10、本章摘要 7.11、开发实战讲解(基于Oracle数据库) 第8章 文件上传 8.1、smartupload上传组件 ...

    李兴华 java_web开发实战经典 源码 完整版收集共享

    7.8、实例操作:注册验证 7.9、DAO设计模式 7.9.1、DAO设计模式简介 7.9.2、DAO开发 7.9.3、JSP调用DAO 7.10、本章摘要 7.11、开发实战讲解(基于Oracle数据库) 第8章 文件上传 8.1、smartupload上传组件 ...

    MLDN+李兴华+Java+Web开发实战经典.part3.rar )

    7.8、实例操作:注册验证 7.9、DAO设计模式 7.9.1、DAO设计模式简介 7.9.2、DAO开发 7.9.3、JSP调用DAO 7.10、本章摘要 7.11、开发实战讲解(基于Oracle数据库) 第8章 文件上传 8.1、smartupload上传...

    李兴华 Java Web 开发实战经典_带源码_高清pdf 带书签 下

    7.8、实例操作:注册验证 7.9、DAO设计模式 7.9.1、DAO设计模式简介 7.9.2、DAO开发 7.9.3、JSP调用DAO 7.10、本章摘要 7.11、开发实战讲解(基于Oracle数据库) 第8章 文件上传 8.1、smartupload上传组件 ...

    李兴华 Java Web 开发实战经典 高清扫描版Part3

    7.8、实例操作:注册验证 7.9、DAO设计模式 7.9.1、DAO设计模式简介 7.9.2、DAO开发 7.9.3、JSP调用DAO 7.10、本章摘要 7.11、开发实战讲解(基于Oracle数据库) 第8章 文件上传 8.1、smartupload上传组件 ...

    李兴华Java Web开发实战经典(高清版) Part2

    7.8、实例操作:注册验证 7.9、DAO设计模式 7.9.1、DAO设计模式简介 7.9.2、DAO开发 7.9.3、JSP调用DAO 7.10、本章摘要 7.11、开发实战讲解(基于Oracle数据库) 第8章 文件上传 8.1、smartupload上传...

    java web 视频、电子书、源码(李兴华老师出版)

    7.8、实例操作:注册验证 7.9、DAO设计模式 7.9.1、DAO设计模式简介 7.9.2、DAO开发 7.9.3、JSP调用DAO 7.10、本章摘要 7.11、开发实战讲解(基于Oracle数据库) 第8章 文件上传 8.1、smartupload上传...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part3

    在知识的讲解上,本书采用理论与实践相结合的方式,从程序运行的内部机制进行分析讲解,并通过大量的实例和实验来验证并运用本书的知识。.. 本书语言生动、通俗易懂、讲解细致,大部分章节都提供了多个例子,而且很...

    PHP+Ajax网站开发典型实例

    实例43 用户注册验证 第6章 实现基本Ajax技术 实例44 Ajax测试实例 实例45 客户端解析普通字符串 实例46 客户端解析XML文件响应 实例47 客户端发送POST无参数请求 实例48 客户端发送带有参数请求 实例49 ...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part4

    在知识的讲解上,本书采用理论与实践相结合的方式,从程序运行的内部机制进行分析讲解,并通过大量的实例和实验来验证并运用本书的知识。.. 本书语言生动、通俗易懂、讲解细致,大部分章节都提供了多个例子,而且很...

    PHP+Ajax网站开发典型实例-源代码

    实例43 用户注册验证 第6章 实现基本Ajax技术 实例44 Ajax测试实例 实例45 客户端解析普通字符串 实例46 客户端解析XML文件响应 实例47 客户端发送POST无参数请求 实例48 客户端发送带有参数请求 实例49 客户端以...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    在知识的讲解上,本书采用理论与实践相结合的方式,从程序运行的内部机制进行分析讲解,并通过大量的实例和实验来验证并运用本书的知识。.. 本书语言生动、通俗易懂、讲解细致,大部分章节都提供了多个例子,而且很...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part5

    在知识的讲解上,本书采用理论与实践相结合的方式,从程序运行的内部机制进行分析讲解,并通过大量的实例和实验来验证并运用本书的知识。.. 本书语言生动、通俗易懂、讲解细致,大部分章节都提供了多个例子,而且很...

    PHP开发api接口安全验证操作实例详解

    本文实例讲述了PHP开发api接口安全验证操作.分享给大家供大家参考,具体如下: php的api接口 在PHP的开发工作中,对API接口开发不会陌生,后端人员写好接口后,前台就可以通过链接获取接口提供的数据,而返回的数据...

    java-j2ee项目实例

    项目功能:1产品/业务展览动态更新窗口 顾客网上注册 顾客登录验证后注册表修改或删除重注册 2 客户通话: 客户验证登录获得客户操作权 获得通话验证后以客户操作权通话输入有效通话活动 再次获得客户操作权查询...

    jQuery正则验证注册页面经典实例

    主要介绍了jQuery正则验证注册页面功能,涉及针对用户名、密码、邮箱、手机号等的正则验证操作技巧,需要的朋友可以参考下

    JSP网站开发典型模块与实例精讲

     2.2.7 使用JavaMail发送注册验证邮件  2.2.8 独家见解——在前台还是后台验证  2.2.8 数据有效性  2.3 实现用户登录  2.3.1 创建登录输入表单  2.3.2 验证用户名及密码是否正确  2.3.3 指点迷津——...

Global site tag (gtag.js) - Google Analytics