如何让jsp链接数据库,数据库里的管理成员表登录进去跳转到相对应的管理页面,学生登录进去跳转到学生页面。
时间: 2024-03-01 22:49:41 浏览: 47
首先,你需要创建一个Java Web项目,并且在项目中导入JDBC驱动包。
接着,在JSP页面中使用Java代码连接数据库,查询管理成员表或学生表,判断用户名和密码是否正确。
如果正确,可以使用session保存用户信息,并且跳转到相应的管理页面或学生页面。
以下是一个示例代码:
```
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
// 导入JDBC驱动包
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/test";
String username = "root";
String password = "password";
// 获取表单提交的用户名和密码
String username_input = request.getParameter("username");
String password_input = request.getParameter("password");
// 连接数据库,查询管理员表
Connection conn = DriverManager.getConnection(url, username, password);
String sql = "SELECT * FROM admin WHERE username=? AND password=?";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setString(1, username_input);
ps.setString(2, password_input);
ResultSet rs = ps.executeQuery();
// 判断用户名和密码是否正确
if (rs.next()) {
// 保存用户信息到session
session.setAttribute("username", rs.getString("username"));
session.setAttribute("role", "admin");
// 跳转到管理页面
response.sendRedirect("admin.jsp");
} else {
// 连接数据库,查询学生表
sql = "SELECT * FROM student WHERE username=? AND password=?";
ps = conn.prepareStatement(sql);
ps.setString(1, username_input);
ps.setString(2, password_input);
rs = ps.executeQuery();
// 判断用户名和密码是否正确
if (rs.next()) {
// 保存用户信息到session
session.setAttribute("username", rs.getString("username"));
session.setAttribute("role", "student");
// 跳转到学生页面
response.sendRedirect("student.jsp");
} else {
// 用户名或密码错误,返回登录页面
response.sendRedirect("login.jsp");
}
}
%>
```
在上面的代码中,我们首先获取表单提交的用户名和密码,然后连接数据库,查询管理员表,判断用户名和密码是否正确,如果正确,保存用户信息到session,跳转到管理页面。
如果用户名和密码不正确,我们接着查询学生表,判断用户名和密码是否正确,如果正确,保存用户信息到session,跳转到学生页面。
如果用户名和密码都不正确,我们返回登录页面。此外,我们还在JSP页面中可以使用EL表达式获取session中保存的用户信息,以便在页面中显示相应的内容。
阅读全文