学习进度概览
总用时:1小时
代码量:新增150行代码
博客量:撰写并发布本篇博客文章
知识点总结:
学习了Servlet的基本概念及其生命周期。
掌握了如何使用JSP(Java Server Pages)来构建动态网页。
实践了在Servlet中处理表单提交,并使用JDBC连接数据库进行数据的增删改查操作。
今日重点
今天主要集中在Servlet和JSP的学习上,通过一个简单的用户注册登录案例来加深理解。以下是具体的实现过程:

Servlet处理用户注册请求
Java
深色版本
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebServlet("/register")
public class RegisterServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");

    // 假设这里调用了服务层方法保存用户信息到数据库
    System.out.println("User registered: " + username);

    response.sendRedirect("register_success.jsp");
}

}
JSP页面展示注册成功信息
Jsp
深色版本
<%@ page contentType="text/html;charset=UTF-8" language="java" %>

注册成功

恭喜您,注册成功!

您可以尝试登录系统。

JDBC连接数据库进行用户验证 Java 深色版本 import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet;

public class DatabaseUtil {

private static final String URL = "jdbc:mysql://localhost:3306/mydb";
private static final String USER = "root";
private static final String PASSWORD = "password";

public boolean validateUser(String username, String password) {
    try (Connection conn = DriverManager.getConnection(URL, USER, PASSWORD);
         PreparedStatement stmt = conn.prepareStatement("SELECT * FROM users WHERE username = ? AND password = ?")) {
        stmt.setString(1, username);
        stmt.setString(2, password);
        ResultSet rs = stmt.executeQuery();
        return rs.next(); // 如果找到匹配的记录,则返回true
    } catch (Exception e) {
        e.printStackTrace();
        return false;
    }
}

}
遇到的问题及解决方案
问题:初次尝试使用JDBC连接MySQL数据库时,遇到了ClassNotFoundException异常。
解决方案:确保已经将MySQL的JDBC驱动添加到了项目的类路径中。可以通过Maven依赖或直接下载jar包放到项目的lib目录下解决。
Xml
深色版本

mysql mysql-connector-java 8.0.23