Jsp实现注册登录(连接Mysql)

Jsp实现注册登录(连接mysql)

最近在学jsp连接数据库,存个档吧

  1. 先在mysql里创建一个数据库
    Jsp实现注册登录(连接Mysql)_第1张图片
  2. 创建表
    Jsp实现注册登录(连接Mysql)_第2张图片
  3. 写一个用户注册的页面

registered.jsp

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


    注册


"post" action="zc.jsp"> 输入用户名:"text" name="username">
输入密码:"text" name="userpwd">
确认密码:"text" name="cuserpwd">
"submit" value="注册">
  1. 读取用户的信息写入到数据库,完成注册
    zc.jsp
<%@ page import="java.sql.Connection" %>
<%@ page import="java.sql.Statement" %>
<%@ page import="java.sql.DriverManager" %>
<%@ page import="java.sql.SQLException" %> 
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


<%
    //获取用户输入信息
    request.setCharacterEncoding("utf-8");
    String username=request.getParameter("username");
    String userpwd=request.getParameter("userpwd");
    String cuserpwd=request.getParameter("cuserpwd");
    //判断两次密码是否相同
    if (cuserpwd.equals(userpwd)) {  
        Connection conn = null;
        Statement stmt = null;
        try {
            //连接驱动
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
        //建立数据库连接
        String url="jdbc:mysql://localhost:3306/bookstore_demo";
        //数据库账号
        String user="root";
        //数据库密码
        String upwd="lj20011028";
        try {
            conn= DriverManager.getConnection(url,user,upwd);
            //创建发射器
            stmt=conn.createStatement();
            //创建sql语句
            String sql="insert into yonghu(username,userpwd) value ('"+username+"','"+userpwd+"')";
            //发送sql语句并接收结果
            int count = stmt.executeUpdate(sql);
            if (count>0){
                out.print("注册成功");
                out.print("登录");
            }
            else{
                out.print("注册失败");
            }
            //关闭资源
            stmt.close();
            conn.close();

        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
    else {
        out.print("注册失败");
    }
%>



  1. 再写一个用户登录界面

logoin.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>logointitle>
head>
<body>
    <form action="logoin_yz.jsp" method="post">
        用户名:<input type="text" name="username"><br>
        密码:<input type="password" name="userpwd" ><br>
        <input type="submit" value="登录">
    form>
body>
html>

  1. 获取用户输入的信息,在数据库中查询有相同记录则登陆成功

logoin_yz.jsp

<%@ page import="java.sql.*" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    


<%
    //获取用户输入信息
    request.setCharacterEncoding("utf-8");
    String username=request.getParameter("username");
    String userpwd=request.getParameter("userpwd");
    Connection conn = null;
    Statement stmt = null;
    try {
        //连接驱动
        Class.forName("com.mysql.jdbc.Driver");
    } catch (ClassNotFoundException e) {
        e.printStackTrace();
    }
    //建立数据库连接
    String url = "jdbc:mysql://localhost:3306/bookstore_demo";
    //数据库账号
    String uname="root";
    //数据库密码
    String upwd="lj20011028";

    try {
        conn = DriverManager.getConnection(url, uname, upwd);
        //创建发射器
        stmt = conn.createStatement();
        //创建sql语句
        String sql = "select*from bookstore_demo.yonghu where username='"+username+"' and userpwd='"+userpwd+"'";
        //发送sql语句并接收结果
        ResultSet rs = stmt.executeQuery(sql);
        if (rs.next()) {
            out.print("登陆成功");
        } else {
            out.print("登陆失败");
        }
        rs.close();
    }
    catch (SQLException e) {
        e.printStackTrace();
    }

%>


  1. 运行
    从注册页面开始运行
    Jsp实现注册登录(连接Mysql)_第3张图片
    若两次密码输入不相同则提示注册失败
    Jsp实现注册登录(连接Mysql)_第4张图片
    若两次密码输入相同则提示注册成功
    Jsp实现注册登录(连接Mysql)_第5张图片
    在mysql中可以通过查询查看获取的用户信息
    Jsp实现注册登录(连接Mysql)_第6张图片

注册成功点击登录跳转到登陆界面
Jsp实现注册登录(连接Mysql)_第7张图片
输入注册的用户名和密码即可登陆成功
Jsp实现注册登录(连接Mysql)_第8张图片
若输入的用户名与密码不匹配则登录失败
Jsp实现注册登录(连接Mysql)_第9张图片

你可能感兴趣的:(jsp,jdbc,数据库)