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 ...
随机推荐
- kotlin学习(1)基础
所有笔记整理自电子工业出版社的<Kotlin实战>一书 变量声明: 类型放在变量名后面: val name:String="aaaa" ,String可以省略,因为可以 ...
- nodejs、npm、 typescript、angular-cli安装
一.node.js环境安装 1.从Node.js官网下载对应平台的安装程序,进行安装,在Windows上安装时务必选择全部组件,包括勾选Add to Path. 2.安装完成后,打开window命令行 ...
- SSM商城系统开发笔记-问题02- Error creating bean with name 'userController'
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean wit ...
- vue函数防抖和节流
Vue函数防抖和节流https://zhuanlan.zhihu.com/p/72363385 <template> <div> <input type='text' v ...
- ES常见错误
1. Request cannot be executed; I/O reactor status: STOPPED RestClient被关闭了 2. SpringBoot启动后 Stopping ...
- Sql 统计一个表有多少列
SELECT COUNT(syscolumns.name) FROM syscolumns , sysobjects WHERE syscolumns.id = sysobjects.id AND s ...
- 一、touch.js
一.touch.js 1.引用链接: <script src="https://cdn.bootcss.com/touchjs/0.2.14/touch.min.js"> ...
- leetcode x进制数 python3
不少题目都是实现吧10进制数转换成x进制数,实际上都是一个套路,下面是7进制的,想换成什么进制,把7替换成相应数字即可,输出的是字符串 16,32进制这种有特殊要求的转不了,其他的应该通用 class ...
- Spring---数据访问
1.Spring Data概述 1.1.Spring Data 项目 是 Spring用来解决数据访问问题 的一站式解决方案,包含了 大量关系型数据库.非关系型数据库 的 数据访问解决方案 ...
- github上拉去代码执行 npm install报错code:128
npm ERR! code npm ERR! Command failed: D:\Program Files\Git\cmd\git.EXE clone --mirror -q git://gith ...