JSP实现简单的用户登录和注册
实验环境:Tomcat 9.0,MySQL 8.0,JDBC 8.0;
实验方法,利用连接池连接MySQL进行操作
首先创建一个Dynamic Web Project
1.连接池的创建
在 WebContent 目录下的 META_INF 目录下创建文件 context.xml记住文件的名字不能更改
context.xml
<?xml version="1.0" encoding="UTF-8"?>
<Context><Resource name="jdbc/mysql"auth="Container"type="javax.sql.DataSource"username="root"password="123456"maxIdle="30" maxWait="10000" maxActive="100"driverClassName="com.mysql.jdbc.Driver"url="jdbc:mysql://127.0.0.1:3306/Duser?serverTimezone=GMT"logAbandoned="true" />
</Context>
2.mysql数据库的创建
create database Duser;
use Duser;
create table user(name varchar(30) not null,password varchar(30) not null,constraint primary key(name) //添加姓名为主键
);
4.login.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>用户登录页面</title>
</head>
<body ><h2 align="center"><font color=red>用户登录页面</font></h2><form action="success.jsp" method="post"><table align="center" border="1"><tr><td>用户名:</td><td><input type="text" name="name"></td></tr><tr><td>密 码:</td><td><input type="text" name="password"></td></tr><tr><td><input type="submit" value="登录" name="login"></td><td><input type="reset" value="重置" name="reset"></td></tr></table><p align="center"><a href="registered.jsp" color=blue>注册用户</a></p></form></body>
</html>
5.registered.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body align="center"><h2>新用户注册</h2><form action="registeredSucceed.jsp" method="post"><table align="center"><tr align="right"><td>请输入用户名:</td><td><input type="text" name=name autofocus="autofocus"></td></tr><tr align="right"><td>请输入密码:</td><td><input type="text" name=password></td></tr><tr align="right"><td>请输入确认密码:</td><td><input type="text" name=refill></td></tr></table><input type="submit" name=register value="注册" ><input type="reset" name=refill value="重填" ></form></body>
</html>
6.registeredSucceed.jsp
<%@page import="java.sql.*"%>
<%@page import="javax.sql.*"%>
<%@page import="javax.naming.*"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><%request.setCharacterEncoding("utf-8"); %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>注册成功页面</title>
</head>
<body>
<%Context ctx = null;DataSource ds = null;Statement stmt =null;ResultSet rs = null;Connection con = null;String name=request.getParameter("name").trim();//去除首尾空格String password=request.getParameter("password").trim();String refill=request.getParameter("refill").trim();try{ctx = new InitialContext();ds = (DataSource)ctx.lookup("java:comp/env/jdbc/mysql");//mysql是在创建连接池时自己创建的名字con = ds.getConnection();stmt = con.createStatement();if(name!=null ){rs=stmt.executeQuery("select * from user where name='"+name+"'");if(rs.next()){out.print("用户已经存在 "+"请<a href=\"registered.jsp\">注册</a>");}else{if(password.equals(refill)){stmt.executeUpdate("insert into user values('"+name+"','"+ password + "');");%>注册成功!!!<br>三秒钟后自动转到登录页面!!!<br>如果没有跳转,请点击<a href="login.jsp">这里</a>!!!<span style="font-size:24px;"><meta http-equiv="refresh" content="3;URL=login.jsp"> </span>
<% }else{out.print("密码输入不一致!!!<br>"+"重新<a href=\"registered.jsp\">注册</a>");}}}else {out.print("姓名不能为空");}}catch(Exception e){out.print(e);}finally{if(rs!=null)rs.close();if(stmt!=null)stmt.close();if(con!=null)con.close();}
%></body>
</html>
7.success.jsp
<%@page import="java.sql.*"%>
<%@page import="javax.sql.*"%>
<%@page import="javax.naming.*"%>
<%request.setCharacterEncoding("utf-8"); %>
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>判断登录</title>
</head>
<body><%Context ctx = null;DataSource ds = null;Statement stmt =null;ResultSet rs = null;Connection con = null;String name = request.getParameter("name").trim();String password = request.getParameter("password").trim();try{ctx = new InitialContext();ds = (DataSource)ctx.lookup("java:comp/env/jdbc/mysql");//mysql是在创建连接池时自己创建的名字 语句功能找到配置的数据库con = ds.getConnection();//创建数据库连接stmt = con.createStatement();rs=stmt.executeQuery("select * from user where name='"+name+"'");if(rs.next()){rs=stmt.executeQuery("select * from user where name='"+name+"' and password='"+password+"'");if(rs.next()){out.print(name+"登录成功");}else{out.print("密码输入错误!!!<br>"+"重新<a href=\"login.jsp\">登录</a>");}}else{out.print("<font color=red>"+name+"</font>用户不存在!!!<br>"+"请点击<a href=\"registered.jsp\">注册</a>");}}catch(Exception e){out.print(e);}finally{if(rs!=null)rs.close();if(stmt!=null)stmt.close();if(con!=null)con.close();}%></body>
</html>
另外还有登录时密码不正确的提示,以及注册时密码输入不一致的判断的功能,也可以去除注册时的空格。可以自己尝试一下这里就不做介绍了
JSP实现简单的用户登录和注册相关推荐
- java servlet 注册登录,JSP+JavaBean+Servlet实现用户登录与注册
数据库 create database student; use student; create table user( id int primary key auto_increment, user ...
- 简单的java信息显示_JSP实现简单的用户登录并显示出用户信息的方法
本文实例讲述了jsp实现简单的用户登录并显示出用户信息的方法.分享给大家供大家参考.具体实现方法如下: login.jsp string path = request.getcontextpath() ...
- jsp java servlet_jsp+java ,servlet如何实现用户登录和注册页面
jsp+java servlet实现简单用户登录(使用数据库,包括注册页面) 功能介绍 本项目通过使用jsp和servlet实现简单的用户登录.主要逻辑为:如果用户不存在,则首先进行注册(注册信息同步 ...
- 【Spring+SpringMVC+Mybatis】利用SSM整合,完成用户登录、注册、修改密码系统
近年来,由于Struts2+Hibernate3+Spring3,这套SSH框架,Struts2屡次爆出安全漏洞,Hibernate就只会推行它HQL那套而越来越远离SQL查询关系数据库的本质,所以S ...
- PHP+Mysql 实现用户登录,注册界面
目标: 实现用户的登录 .注册 .修改密码.重置密码.添加书签,显示书签,删除书签 等功能 进一步目标: 实现对 用户输入信息的控制,具体表现在 对注册信息.登录信息的 的过滤,具有简单的防sql注入 ...
- 用python写注册登录界面web_用Python实现web端用户登录和注册功能
这篇文章主要介绍了用Python实现web端用户登录和注册功能的教程,需要的朋友可以参考下 用户管理是绝大部分Web网站都需要解决的问题.用户管理涉及到用户注册和登录. 用户注册相对简单,我们可以先通 ...
- python123注册登录_用Python实现web端用户登录和注册功能的教程
用户管理是绝大部分Web网站都需要解决的问题.用户管理涉及到用户注册和登录. 用户注册相对简单,我们可以先通过API把用户注册这个功能实现了: _RE_MD5 = re.compile(r'^[0-9 ...
- 一个简单的用户登录界面
今天我们学习了如何实现一个简单的用户登陆界面,具体要用到两个jsp和一个servlet,具体操作如下: 首先创建一个用户登录界面,inputview.jsp,其源代码如下所示: <!DOCTYP ...
- Django用户登录与注册系统
1.1.创建项目和app django-admin startproject mysite_loginpython manage.py startapp login 1.2.设置时区和语言 Djang ...
最新文章
- Ubuntu 虚拟机空间不足增加空间笔记
- AtCoder Regular Contest 062 E - AtCoDeerくんと立方体づくり / Building Cubes with AtCoDeer
- 处理字符串_14_SQL处理IN和合并后字符串案例详解
- junit测试设置不回滚_正确设置JUnit测试名称
- centos安装python3_CentOS安装Python3-阿里云开发者社区
- C语言 数据结构 实验二 线性表的链式存储及其操作
- 【电商】平台电商生态建设
- git push 提交失败
- mysql 商品规格表_商品规格分析
- funny_upload
- utils.data的使用
- android 10.0 禁止安装apk
- A2021-A2022年度项目总结(二)
- 进程间通信之面包师问题
- 第6天2021-08-13
- java 资源映射访问本地磁盘的文件或者访问项目静态资源
- 电能管理系统在惠氏公司的应用
- CROC 2016 - Elimination Round (Rated Unofficial Edition) B. Mischievous Mess Makers 贪心
- MPP数据库分区表详解
- 前端拖拽排序插件的实现——讲一个六耳猕猴和孙悟空的故事