设计一个用户登录应用程序,使用业务类服务数据库.接受用户提交的登录表单,查询数据库中是否存在该用户。 实验步骤: (1)编写访问数据库的业务类Javabean(DBcon.java)、登录页面login.jsp、验证页面checkUser, jsp和登录成功页面main. html。 bean. DBcon. java参考代码如下: (2)程序测试,分别输人正确的和错误的用户名或密码,观察效果。 实现过程、核心代码和实验效果:
时间: 2023-06-26 14:10:13 浏览: 600
实现过程:
1. 创建一个数据库,用于存储用户信息。
2. 创建一个 Javabean 类,用于连接数据库和查询用户信息。
3. 创建一个登录页面 login.jsp,用于接收用户输入的用户名和密码。
4. 创建一个验证页面 checkUser.jsp,用于调用 Javabean 类查询数据库中是否存在该用户。
5. 如果用户存在,跳转到登录成功页面 main.html,否则返回登录页面。
核心代码:
Javabean 类 DBcon.java:
```java
import java.sql.*;
public class DBcon {
private Connection conn = null;
private Statement stmt = null;
private ResultSet rs = null;
public boolean checkUser(String username, String password) {
boolean result = false;
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "password");
stmt = conn.createStatement();
rs = stmt.executeQuery("select * from user where username='" + username + "' and password='" + password + "'");
if (rs.next()) {
result = true;
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
return result;
}
}
```
登录页面 login.jsp:
```html
<!DOCTYPE html>
<html>
<head>
<title>Login</title>
</head>
<body>
<form action="checkUser.jsp" method="post">
<label for="username">Username:</label>
<input type="text" name="username" required><br>
<label for="password">Password:</label>
<input type="password" name="password" required><br>
<input type="submit" value="Login">
</form>
</body>
</html>
```
验证页面 checkUser.jsp:
```java
<%@ page import="DBcon" %>
<%
String username = request.getParameter("username");
String password = request.getParameter("password");
DBcon db = new DBcon();
if (db.checkUser(username, password)) {
session.setAttribute("username", username);
response.sendRedirect("main.html");
} else {
response.sendRedirect("login.jsp");
}
%>
```
登录成功页面 main.html:
```html
<!DOCTYPE html>
<html>
<head>
<title>Main</title>
</head>
<body>
<h1>Welcome <%= session.getAttribute("username") %>!</h1>
</body>
</html>
```
实验效果:
1. 输入正确的用户名和密码,跳转到登录成功页面。
![login_success](https://user-images.githubusercontent.com/29985870/134075569-5fbc8d9d-c3e9-403e-804b-9ef6c30e3edc.png)
2. 输入错误的用户名和密码,返回登录页面。
![login_failure](https://user-images.githubusercontent.com/29985870/134075583-e5a8b5ea-e5dd-4b84-9881-cf0c61e9f0c9.png)
阅读全文