JSP实现简单的用户登录和注册

实验环境:Tomcat 9.0,MySQL 8.0,JDBC 8.0;

实验方法,利用连接池连接MySQL进行操作

首先创建一个Dynamic Web Project

1.连接池的创建

在 WebContent 目录下的 META_INF 目录下创建文件 context.xml记住文件的名字不能更改
JSP实现简单的用户登录和注册_第1张图片
context.xml



	

JSP实现简单的用户登录和注册_第2张图片
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"%>




用户登录页面


	

用户登录页面

用户名:
密  码:

注册用户

5.registered.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>




Insert title here


	

新用户注册

请输入用户名:
请输入密码:
请输入确认密码:

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"); %>




注册成功页面


<%
		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("用户已经存在  "+"请注册");
			}else{
				if(password.equals(refill)){
	 				stmt.executeUpdate("insert into user values('"+name+"','"+ password + "');");
				%>
				注册成功!!!
三秒钟后自动转到登录页面!!!
如果没有跳转,请点击这里!!! <% }else{ out.print("密码输入不一致!!!
"+"重新注册"); } } }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(); } %>

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"%>




判断登录


	<%
		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("密码输入错误!!!
"+"重新登录"); } }else{ out.print(""+name+"用户不存在!!!
"+"请点击注册"); } }catch(Exception e){ out.print(e); }finally{ if(rs!=null) rs.close(); if(stmt!=null) stmt.close(); if(con!=null) con.close(); } %>

JSP实现简单的用户登录和注册_第3张图片
JSP实现简单的用户登录和注册_第4张图片
JSP实现简单的用户登录和注册_第5张图片
JSP实现简单的用户登录和注册_第6张图片
JSP实现简单的用户登录和注册_第7张图片
JSP实现简单的用户登录和注册_第8张图片
另外还有登录时密码不正确的提示,以及注册时密码输入不一致的判断的功能,也可以去除注册时的空格。可以自己尝试一下这里就不做介绍了

你可能感兴趣的:(JSP,jsp,用户注册)