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 ...
随机推荐
- Oracle数据库的特点与工作原理
Oracle数据库的特点 1.开放性: Oracle能在所有主流平台上运行(包括Windows),完全支持所有的工业标准,采用完全开放策略,可以使客户选择最适合的解决方案,对开发商全力支持. 2.可伸 ...
- P4643 [国家集训队]阿狸和桃子的游戏
传送门 这题看一眼就很不可做 考虑对于任意一个最终状态,对于一条边的贡献分成三种情况 如果此边连接的两点属于 $A$,那么对 $A$ 的贡献就是边权 $w$,即对答案的贡献为 $+w$ 如果两点都属于 ...
- 搭建Eclipse+pydev+python2.7.5+django1.5.1+mysql5.0.45平台
mysqldb 下载地址 http://sourceforge.net/projects/mysql-python/ or https://pypi.python.org/pypi/MySQL-pyt ...
- 如何利用Chrome进行跨域调试
为什么要跨域调试: 拿嵌入式web开发说,代码都是跑在板子上,我一个优雅的前端开发要每次改完代码都打包到板子上,用板子的地址打开,这是人做的事??? 怎么跨域调试: 1.升级Chrome为最新版本 2 ...
- 基本SQL查询语句
使用Emp表和Dept表完成下列练习 Emp员工表 empno ename job Mgr Hiredate Sal Comm Deptno 员工号 员工姓名 工作 上级编号 受雇日期 薪金 佣金 部 ...
- centos下通过conda安装pytorch
一.安装anaconda anaconda安装简单,只要确定自己的系统即可,具体安装请参考这里 二.确定自己的系统版本 我的是centos cat /etc/redhat-release 查看linu ...
- 转义字符\e
Windows 平台下,conio.h 中有许多操作控制台颜色.格式的函数.但是再 Linux 平台下却没有类似的函数.经过在网上的一番搜索,找到了解决此问题的方法——转义字符\e.注意,\e这种写法 ...
- 牛客ACM赛 C 区区区间间间
链接 C 区区区间间间 给定长度为\(n\)序列,求\[\sum_{i=1}^{n} \sum_{j=i}^{n} max-min\] 其中\(max\),\(min\)为区间最大,最小值,\(n\l ...
- 前端每日实战:37# 视频演示如何把握好 transition 和 animation 的时序,创作描边按钮特效
效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/mKdzZM 可交互视频教程 此视频 ...
- macaca搭建
对于新鲜的事务总是那么好奇,在自动化的过程中,有幸了解到macaca,记录下安装过程,具体介绍请移步官网:https://github.com/macacajs/ python版本参考:https:/ ...