2. 使用JSP+servlet,来实现一个登陆页面,登陆成功则提示成功,登陆失败则提示失败。登陆页面由login.jsp负责显示,登陆成功由success.jsp负责显示,登陆失败由error.jsp负责显示。逻辑判断和跳转交由servlet负责。
时间: 2024-02-05 22:12:32 浏览: 119
好的,我可以为您提供一个简单的示例代码来实现这个功能。
首先是 `login.jsp` 页面,代码如下:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Login Page</title>
</head>
<body>
<h1>Login Page</h1>
<form method="post" action="loginServlet">
<label>Username:</label>
<input type="text" name="username"><br>
<label>Password:</label>
<input type="password" name="password"><br><br>
<input type="submit" value="Login">
</form>
</body>
</html>
```
接下来是 `loginServlet` 的代码,它负责处理用户的登录请求和逻辑判断:
```java
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
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");
// 在这里进行逻辑判断,比如判断用户名和密码是否正确
if (username.equals("admin") && password.equals("123456")) {
// 如果用户名和密码正确,将用户信息存入 session 中
HttpSession session = request.getSession();
session.setAttribute("username", username);
// 登录成功,跳转到 success.jsp 页面
response.sendRedirect("success.jsp");
} else {
// 登录失败,跳转到 error.jsp 页面
response.sendRedirect("error.jsp");
}
}
}
```
最后是 `success.jsp` 和 `error.jsp` 页面,它们负责显示登录成功和登录失败的提示信息:
```html
<!-- success.jsp -->
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Login Success</title>
</head>
<body>
<h1>Login Success</h1>
<p>Welcome, <%= session.getAttribute("username") %>!</p>
</body>
</html>
```
```html
<!-- error.jsp -->
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Login Error</title>
</head>
<body>
<h1>Login Error</h1>
<p>Sorry, your username or password is incorrect.</p>
</body>
</html>
```
请注意,以上代码仅为示例代码,实际应用中需要根据具体情况进行修改。
阅读全文