用户表: uid (主键,自动增长) uname upwd
使用分层实现注册。(必做)
使用分层实现登录。(选做)
======================================
1. 创建数据库
CREATE DATABASE jspdata; USE jspdata; CREATE TABLE jspdata(uid INT AUTO_INCREMENT PRIMARY KEY,uname VARCHAR(10),upwd VARCHAR(10));
插入两条测试数据(张三,123;李四,123)后
2.使用分层实现注册
register.jsp(注册界面)
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>注册界面</title> <link rel="stylesheet" href="layui/css/layui.css"> <link rel="stylesheet" href="css/adminLogin.css"> </head> <body> <div class="wrap"> <img src="img/back.png" class="imgStyle"> <div class="loginForm"> <form action="registerget.jsp" method="POST"> <div class="logoHead"> </div> <div class="usernameWrapDiv"> <div class="usernameLabel"> <label>用户名:</label> </div> <div class="usernameDiv"> <i class="layui-icon layui-icon-username adminIcon"></i> <input id="loginUsername" class="layui-input adminInput" type="text" name="name" placeholder="输入用户名"> </div> </div> <div class="usernameWrapDiv"> <div class="usernameLabel"> <label>密码:</label> </div> <div class="passwordDiv"> <i class="layui-icon layui-icon-password adminIcon"></i> <input id="loginPassword" class="layui-input adminInput" type="password" name="password" placeholder="输入密码"> </div> </div> <div class="usernameWrapDiv"> <div class="usernameLabel"> <label>确认密码:</label> </div> <div class="passwordDiv"> <i class="layui-icon layui-icon-password adminIcon"></i> <input id="" class="layui-input adminInput" type="password" placeholder="输入密码"> </div> </div> <div class="usernameWrapDiv"> <div class="submitLabel"> <label> </label> </div> <div class="submitDiv"><input id="loginBtn" type="submit" class="submit layui-btn layui-btn-primary" value="登录"> </div> </div> </form> </div> </div> </body> </html>
registerget.jsp(注册信息收集界面)
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ page language="java" import="java.util.*"%> <%@page import="com.jjy.dao.jspdataDao"%> <%@page import="com.jjy.bean.jspdata"%> <html> <head> <title>注册信息收集界面</title> </head> <body> <% request.setCharacterEncoding("utf-8"); jspdata u= new jspdata(); String uname = request.getParameter("name");uname.trim(); u.setUname(uname); String upwd = request.getParameter("password");upwd.trim(); u.setUpwd(upwd); jspdataDao sd=new jspdataDao(); if(sd.addUers(u)>0){ %><p>注册成功:<%=uname%></p><a href="index.jsp"><button>去登陆</button></a> <% }else{%> <p>输入错误,请重新注册</p><a href="register.jsp"><button>返回注册界面</button></a> <% } %> </body> </html>
3.使用分层实现登录
index.jsp(登陆界面)
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>登陆界面</title> <link rel="stylesheet" href="layui/css/layui.css"> <link rel="stylesheet" href="css/adminLogin.css"> </head> <body> <div class="wrap"> <img src="img/back.png" class="imgStyle"> <div class="loginForm"> <form action="get.jsp" method="POST"> <div class="logoHead"> </div> <div class="usernameWrapDiv"> <div class="usernameLabel"> <label>用户名:</label> </div> <div class="usernameDiv"> <i class="layui-icon layui-icon-username adminIcon"></i> <input id="loginUsername" class="layui-input adminInput" type="text" name="name" placeholder="输入用户名"> </div> </div> <div class="usernameWrapDiv"> <div class="usernameLabel"> <label>密码:</label> </div> <div class="passwordDiv"> <i class="layui-icon layui-icon-password adminIcon"></i> <input id="loginPassword" class="layui-input adminInput" type="password" name="password" placeholder="输入密码"> </div> </div> <div class="usernameWrapDiv"> <div class="usernameLabel"> <label>验证码:</label> </div> <div class="cardDiv"> <input id="loginCard" class="layui-input cardInput" type="text" name="card" placeholder="输入验证码"> </div> <div id="code_box" class="codeDiv">a1c4(点击切换验证码) </div> </div> <div class="usernameWrapDiv"> <div class="submitLabel"> <label>没有账号?<a href="register.jsp" id="loginRegister">点击注册</a></label> </div> <div class="submitDiv"> <input id="loginBtn" type="submit" class="submit layui-btn layui-btn-primary" value="登录"></input> </div> </div> </form> </div> </div> <script src="js/code.js"></script> </body> </html>
get.jsp(登录信息收集界面)
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ page language="java" import="java.util.*"%> <%@ page import ="java.sql.*"%> <%@page import="com.jjy.dao.jspdataDao"%> <%@page import="com.jjy.bean.jspdata"%> <html> <head> <title>登录收集界面</title> </head> <body> <% request.setCharacterEncoding("utf-8"); jspdata u= new jspdata(); String uname = request.getParameter("name");uname.trim(); u.setUname(uname); String upwd = request.getParameter("password");upwd.trim(); u.setUpwd(upwd); jspdataDao ss=new jspdataDao(); if(ss.queryUers(u)>0){ %><p>欢迎登陆:<%=uname%></p><% }else{%> <p>输入错误,请重新登录</p><a href="index.jsp"><button>返回登录界面</button></a> <% } %> </body> </html>
4.jspdata.java
package com.jjy.bean; public class jspdata { private String uname; private String upwd; public String getUname() { return uname; } public void setUname(String uname) { this.uname = uname; } public String getUpwd() { return upwd; } public void setUpwd(String upwd) { this.upwd = upwd; } public jspdata(String uname,String upwd){ super(); this.uname = uname; this.upwd = upwd; } public jspdata() { super(); } }
5.jspdataDao.jsp
package com.jjy.dao; import com.jjy.bean.jspdata; import java.sql.*; public class jspdataDao { PreparedStatement pre = null; ResultSet rs=null; Connection conn=null; public int addUers(jspdata u) { int i = 0; try { //加载驱动 Class.forName("com.mysql.cj.jdbc.Driver"); // 建立连接 conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/jspdata?serverTimezone=GMT", "root", "135790"); //写SQL语句 String sql = "insert into jspdata (uname,upwd) values(?,?)"; //执行 PreparedStatement ps = conn.prepareStatement(sql); ps.setString(1, u.getUname()); ps.setString(2, u.getUpwd()); i = ps.executeUpdate(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } if(rs != null){ // 关闭记录集 try{ rs.close(); }catch(SQLException e){ e.printStackTrace() ; } } if(pre != null){ // 关闭声明 try{ pre.close() ; }catch(SQLException e){ e.printStackTrace() ; } } if(conn!= null){ // 关闭连接对象 try{ conn.close() ; }catch(SQLException e){ e.printStackTrace() ; } } return i; } public int queryUers(jspdata u) { int i=0; try { //加载驱动 Class.forName("com.mysql.cj.jdbc.Driver"); // 建立连接 conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/jspdata?serverTimezone=GMT", "root", "135790"); //写SQL语句 String sql = "select uname,upwd from jspdata where uname=? and upwd=?"; //执行 PreparedStatement ps = conn.prepareStatement(sql); ps.setString(1, u.getUname()); ps.setString(2, u.getUpwd()); rs =ps.executeQuery(); if (rs.next()){ i=1; } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } if (rs != null) { // 关闭记录集 try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } } if (pre != null) { // 关闭声明 try { pre.close(); } catch (SQLException e) { e.printStackTrace(); } } if (conn != null) { // 关闭连接对象 try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } return i; } }