利用JSP+MYSQL实现注册+登入的demo----0001

用JSP实现注册登入
  1. 使用到的JAR
    在这里插入图片描述
  2. JDBC连接数据库
    注意MYSQL8+ 需使用新的启动
//        URL = "jdbc:mysql://localhost:3306/takeout206?&useSSL=false&serverTimezone=UTC";
//        USERNAME = "username";
//        PASSWORD ="password";
//        DRIVER = "com.mysql.cj.jdbc.Driver"; /* mysq8+*/
//        DRIVER = "com.mysql.jdbc.Driver"; /* mysq8-*/
  1. 使用java.util.ResourceBundle 把数据库连接信息放到文档中去
    新建一个后缀为properties的文件,并把以下信息写入
jdbc.url=jdbc:mysql://localhost:3306/takeout206?&useSSL=false&serverTimezone=UTC
jdbc.username=username
jdbc.password=password
jdbc.driver=com.mysql.cj.jdbc.Driver
 ResourceBundle rb = ResourceBundle.getBundle("文件位置,不要加后缀");
 URL = rb.getString("jdbc.url");
 USERNAME = rb.getString("jdbc.username");
 PASSWORD = rb.getString("jdbc.password");
 DRIVER = rb.getString("jdbc.driver");
  1. 检查驱动加载,数据库连接是否成功
 try {
            Class.forName(DRIVER);
            System.out.println("驱动加载成功");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
            System.out.println("驱动加载失败");
        }
 try {
            conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
            System.out.println("数据库连接成功");
        } catch (SQLException e) {
            e.printStackTrace();
            System.out.println("获取数据库连接失败,请检查");
        }
  1. 定义user与数据库一至
    在这里插入图片描述
    并生成set,get,构造方法
  2. 实现登入与注册逻辑功能
    接口
    在这里插入图片描述
    实现
    在这里插入图片描述
  3. 设计登入页面

HTML协议中要求,form的action属性,以“/”开头是绝对路径,不以“/”开头的是相对路径。
绝对路径是相对于服务器地址而言的,相对路径是相对于当前网页或请求而言的。

由于此文件位于 jsp/login.jsp
所以此时action跳转到 项目根目录
在这里插入图片描述
8. 设计servlet来获取表单信息并实现跳转

说明: 使用urlpatterns来这是servlet的路径
此时servlet的路径为:项目根目录下
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
首先,我们需要创建一个数据库,并在其中创建一个名为“users”的表,该表包含以下列:id(主键,自增),username,password。 接下来,我们来实现注册功能。在JSP页面上创建一个表单,让用户输入用户名和密码。表单的提交将发送到一个名为“register.jsp”的JSP页面,该页面将处理用户输入的数据并将其插入到数据库中。 register.jsp的代码如下: ```jsp <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ page import="java.sql.*" %> <% String username = request.getParameter("username"); String password = request.getParameter("password"); Connection conn = null; PreparedStatement pstmt = null; try { // 连接数据库 Class.forName("com.mysql.jdbc.Driver"); String url = "jdbc:mysql://localhost:3306/test"; String user = "root"; String dbPassword = "password"; conn = DriverManager.getConnection(url, user, dbPassword); // 插入用户数据 String sql = "INSERT INTO users (username, password) VALUES (?, ?)"; pstmt = conn.prepareStatement(sql); pstmt.setString(1, username); pstmt.setString(2, password); pstmt.executeUpdate(); out.println("注册成功!"); } catch (Exception e) { e.printStackTrace(); } finally { try { if (pstmt != null) pstmt.close(); if (conn != null) conn.close(); } catch (SQLException e) { e.printStackTrace(); } } %> ``` 在该JSP页面中,我们首先获取用户提交的用户名和密码。然后,我们连接到MySQL数据库并将用户名和密码插入到“users”表中。如果插入成功,则向用户显示“注册成功!”的消息。 现在,我们来实现登陆功能。在JSP页面上创建一个表单,让用户输入用户名和密码。表单的提交将发送到一个名为“login.jsp”的JSP页面,该页面将检查用户输入的用户名和密码是否与数据库中的记录匹配。 login.jsp的代码如下: ```jsp <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ page import="java.sql.*" %> <% String username = request.getParameter("username"); String password = request.getParameter("password"); Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; try { // 连接数据库 Class.forName("com.mysql.jdbc.Driver"); String url = "jdbc:mysql://localhost:3306/test"; String user = "root"; String dbPassword = "password"; conn = DriverManager.getConnection(url, user, dbPassword); // 检查用户数据 String sql = "SELECT * FROM users WHERE username=? AND password=?"; pstmt = conn.prepareStatement(sql); pstmt.setString(1, username); pstmt.setString(2, password); rs = pstmt.executeQuery(); if (rs.next()) { out.println("登陆成功!"); } else { out.println("用户名或密码错误!"); } } catch (Exception e) { e.printStackTrace(); } finally { try { if (rs != null) rs.close(); if (pstmt != null) pstmt.close(); if (conn != null) conn.close(); } catch (SQLException e) { e.printStackTrace(); } } %> ``` 在该JSP页面中,我们首先获取用户提交的用户名和密码。然后,我们连接到MySQL数据库并检查用户名和密码是否与“users”表中的记录匹配。如果匹配,则向用户显示“登陆成功!”的消息。否则,向用户显示“用户名或密码错误!”的消息。 以上就是用JSPMySQL实现注册登陆的基本步骤。当然,这只是一个简单的例子,实际应用中还需要进行更多的安全性检查和优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值