JSP+JavaBean 登陆验证
1.java
package cn.gs.ly; import java.util.HashMap;
import java.util.Map; public class Register {
private String name;
private String age;
private String email;
private Map<String,String>errors = null; //存放登陆错误 提示信息 public Register() {
name="";
age="";
email="";
errors = new HashMap<String, String>();
}
//定义一个方法,数据验证操作
public boolean isValidate(){
boolean flag = true;
if(!(this.name.matches("\\w{2,6}"))){ //输入不符合正则表达式
flag = false; //触发flag
this.name=""; //name 赋空值
errors.put("errname", "请输入2~6位的**"); //登陆错误提示信息 放入集合
}
if(!(this.age.matches("\\d{2}"))){
flag = false;
this.age="";
errors.put("errage", "请输入2位的数字");
}
if(!(this.email.matches("[1-9]\\d{4,10}@[qQ][qQ].com"))){
flag = false;
this.email="";
errors.put("erremail", "请输入正确的邮箱");
}
return flag;
}
//定义一个语言 登陆错误提示信息
public String getErrorMsg(String key){
String value = this.errors.get(key);
return value==null?"":value; //value为null赋空值 ,不为null 赋值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;
} }
package cn.gs.ly; import java.util.HashMap;
import java.util.Map; public class Register {
private String name;
private String age;
private String email;
private Map<String,String>errors = null; //存放登陆错误 提示信息 public Register() {
name="";
age="";
email="";
errors = new HashMap<String, String>();
}
//定义一个方法,数据验证操作
public boolean isValidate(){
boolean flag = true;
if(!(this.name.matches("\\w{2,6}"))){ //输入不符合正则表达式
flag = false; //触发flag
this.name=""; //name 赋空值
errors.put("errname", "请输入2~6位的**"); //登陆错误提示信息 放入集合
}
if(!(this.age.matches("\\d{2}"))){
flag = false;
this.age="";
errors.put("errage", "请输入2位的数字");
}
if(!(this.email.matches("[1-9]\\d{4,10}@[qQ][qQ].com"))){
flag = false;
this.email="";
errors.put("erremail", "请输入正确的邮箱");
}
return flag;
}
//定义一个语言 登陆错误提示信息
public String getErrorMsg(String key){
String value = this.errors.get(key);
return value==null?"":value; //value为null赋空值 ,不为null 赋值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;
} }
2.jsp
<%@ page language="java" contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>index</title>
</head>
<body>
<jsp:useBean id="reg" scope="request" class="cn.gs.ly.Register" ></jsp:useBean> <form action="check.jsp" method="post">
<table border="1" cellpadding="0" cellspacing="0">
<tr>
<td>姓名:</td>
<td><input type="text" name="name" value='<jsp:getProperty property="name" name="reg" />'><%=reg.getErrorMsg("errname") %></td>
</tr>
<tr>
<td>年龄:</td>
<td><input type="text" name="age" value='<jsp:getProperty property="age" name="reg" />'><%=reg.getErrorMsg("errage") %> </td>
</tr>
<tr>
<td>邮箱:</td>
<td><input type="text" name="email" value='<jsp:getProperty property="email" name="reg" />'><%=reg.getErrorMsg("erremail")%> </td>
</tr>
</table>
<input type="submit" value="提交" />
</form>
</body>
</html>
<%@ page language="java" contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>check login</title>
</head>
<body>
<jsp:useBean id="reg" scope="request" class="cn.gs.ly.Register" ></jsp:useBean>
<jsp:setProperty name="reg" property="*" />
<%
if(reg.isValidate()){
%>
<jsp:forward page="success.jsp" />
<%
}else{
%>
<jsp:forward page="index.jsp" />
<%
}
%>
</body>
</html>
<%@ page language="java" contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>login success</title>
</head>
<body>
<%
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
%>
<jsp:useBean id="reg" scope="request" class="cn.gs.ly.Register" ></jsp:useBean>
<h1>登陆成功,登陆信息为:</h1><hr color="red">
<h1>姓名:<jsp:getProperty property="name" name="reg" /></h1><hr color="red">
<h1>年龄:<jsp:getProperty property="age" name="reg" /></h1><hr color="red">
<h1>邮箱:<jsp:getProperty property="email" name="reg" /></h1><hr color="red">
</body>
</html>
JSP+JavaBean 登陆验证的更多相关文章
- javaweb基础(22)_Servlet+JSP+JavaBean实战登陆
一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...
- 【Java EE 学习 70 上】【数据采集系统第二天】【数据加密处理】【登陆验证】【登陆拦截器】【新建调查】【查询调查】
一.数据加密处理 这里使用MD5加密处理,使用java中自带加密工具类MessageDigest. 该类有一个方法digest,该方法输入参数是一个字符串返回值是一个长度为16的字节数组.最关键的是需 ...
- 【Java EE 学习 20】【使用过滤器实现登陆验证、权限认证】【观察者模式和监听器(使用监听器实现统计在线IP、登录IP 、踢人功能)】
一.使用过滤器实现登录验证.权限认证 1.创建5张表 /*使用过滤器实现权限过滤功能*/ /**创建数据库*/ DROP DATABASE day20; CREATE DATABASE day20; ...
- javaweb学习总结(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册
一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...
- Servlet+JSP+JavaBean开发模式(MVC)介绍
好伤心...写登陆注册之前看见一篇很好的博文,没有收藏,然后找不到了. 前几天在知乎上看见一个问题,什么时候感觉最无力. 前两天一直想回答:尝试过google到的所有solve case,结果bug依 ...
- Java的登陆验证问题
java中的登陆验证问题可以有多种方式进行验证,通过拦截器功能完成,可以通过过滤器功能完成,也可以简单的代码在JSP页面中单独完成,其中都 涉及到一个关键的验证步骤,这个验证原理ASP,PHP,JAV ...
- Shrio登陆验证实例详细解读(转)
摘要:本文采用了Spring+SpringMVC+Mybatis+Shiro+Msql来写了一个登陆验证的实例,下面来看看过程吧!整个工程基于Mavevn来创建,运行环境为JDK1.6+WIN7+to ...
- 咸鱼入门到放弃11--Servlet+JSP+JavaBean开发模式
本篇搬运了大佬blog:https://www.cnblogs.com/xdp-gacl/p/3902537.html 一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servle ...
- JavaWeb学习 (二十一)————基于Servlet+JSP+JavaBean开发模式的用户登录注册
一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...
随机推荐
- FZUOJ-2273 Triangles
Problem 2273 Triangles Accept: 109 Submit: 360 Time Limit: 1000 mSec Memory Limit : 262144 KB ...
- java synchronized实现可见性对比volatile
问题: 大家可以先看看这个问题,看看这个是否有问题呢? 那里有问题呢? public class ThreadSafeCache { int result; public int getResult( ...
- JS—图片压缩上传(单张)
*vue+webpack环境,这里的that指到vue实例 <input type="file" name="file" accept="ima ...
- %.*f (特殊的输出符)
c语言中每一种数据类型都有自己的专属占位符,如整型的%d,浮点型的%f等,而*也是一个占位符,比较特殊而已. 比如输入一个n,输出0.5的n次方,就可以这么写 #include<bits/std ...
- js+css实现点击回到顶部的效果(最低兼容至ie7)
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- Asp.net中GridView使用详解(很全,很经典)
http://blog.csdn.net/hello_world_wusu/article/details/4052844 Asp.net中GridView使用详解 效果图参考:http://hi.b ...
- 13-jQuery事件绑定和常用鼠标事件
# 关于事件 ## 事件绑定 1.**基本绑定** > $(element).click(function(){})>> $(element).dblclick(function() ...
- jQuery中attr()和prop()及removeAttr()和removeProp()的区别
在jquery1.6之前的所有版本中设置和获取元素属性(固有属性和自定义属性)都使用attr方法,后来单独把设置和获取元素固有属性单独做成了prop()方法. 一般来说: 对于HTML元素本身就带有的 ...
- 常见3种Git服务器的构建
学习Git不同的服务器形式,具体如下: - 创建SSH协议服务器 - 创建Git协议服务器 - 创建HTTP协议服务器 方案: Git支持很多服务器协议形式,不同协议的Git服务器,客户端就可以使用不 ...
- c++函数参数或返回值为函数指针
C++中函数指针的形式为:返回值类型 + 参数类型,函数没有值类型,但是却可以声明函数的指针,因为函数是可寻址的,存放在内存中的代码段,可以从指针访问. 函数指针可以声明为: void (*pF)(v ...