mvc登录实例 mysql_MVC(JSP+JavaBean+Servlet)入门实例:用户登陆验证
时间: 2023-08-04 16:06:38 浏览: 60
好的,我将为您提供一个简单的MVC登录实例,使用JSP、JavaBean和Servlet来验证用户登录。
首先,我们需要创建一个MySQL数据库,并在其中创建一个名为“users”的表,该表包含以下三列:username、password和email。
接下来,我们需要创建一个JavaBean,用于处理用户登录信息。该JavaBean应该包含以下两个属性:用户名和密码。它还应该有一个方法,该方法将获取用户名和密码并将其与数据库中存储的信息进行比较。如果用户名和密码匹配,则该方法应返回true,否则返回false。
以下是JavaBean的示例代码:
```java
package com.example.model;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class User {
private String username;
private String password;
public User() {}
public boolean isValid() throws ClassNotFoundException, SQLException {
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb", "root", "password");
PreparedStatement ps = con.prepareStatement("select * from users where username=? and password=?");
ps.setString(1, username);
ps.setString(2, password);
ResultSet rs = ps.executeQuery();
if (rs.next()) {
return true;
}
return false;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
```
接下来,我们需要创建一个JSP页面,用于显示登录表单并将用户输入的用户名和密码发送到Servlet进行处理。以下是JSP页面的示例代码:
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Login Page</title>
</head>
<body>
<h1>Login Page</h1>
<form action="LoginServlet" method="post">
<label>Username:</label>
<input type="text" name="username"><br><br>
<label>Password:</label>
<input type="password" name="password"><br><br>
<input type="submit" value="Login">
</form>
</body>
</html>
```
最后,我们需要创建一个Servlet,用于接收来自JSP页面的用户名和密码,并使用JavaBean进行验证。如果用户名和密码有效,则Servlet应该将用户重定向到另一个JSP页面,否则应该将用户重定向回登录页面。以下是Servlet的示例代码:
```java
package com.example.controller;
import java.io.IOException;
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 com.example.model.User;
@WebServlet("/LoginServlet")
public class LoginServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");
User user = new User();
user.setUsername(username);
user.setPassword(password);
try {
if (user.isValid()) {
response.sendRedirect("welcome.jsp");
} else {
response.sendRedirect("login.jsp");
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
现在,我们已经完成了一个简单的MVC登录实例,使用JSP、JavaBean和Servlet来验证用户登录。