1.制作一个表单,用户输入用户名、密码,提交给LoginServlet处理,如果用户名密码相等,则跳转到SuccessServlet,并显示“欢迎您,XX”(XX为用户名),否则跳转到FailServlet,显示“登录失败”。代码
时间: 2023-08-05 20:05:20 浏览: 79
下面是一个简单的示例代码:
index.html(表单页面)
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Login</title>
</head>
<body>
<h1>Login</h1>
<form action="LoginServlet" method="post">
<label for="username">Username:</label>
<input type="text" id="username" name="username"><br><br>
<label for="password">Password:</label>
<input type="password" id="password" name="password"><br><br>
<input type="submit" value="Submit">
</form>
</body>
</html>
```
LoginServlet.java
```java
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;
@WebServlet("/LoginServlet")
public class LoginServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public LoginServlet() {
super();
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");
if(username.equals(password)) {
response.sendRedirect("SuccessServlet?username=" + username);
} else {
response.sendRedirect("FailServlet");
}
}
}
```
SuccessServlet.java
```java
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;
@WebServlet("/SuccessServlet")
public class SuccessServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public SuccessServlet() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String username = request.getParameter("username");
response.setContentType("text/html");
response.getWriter().println("<h1>Welcome, " + username + "</h1>");
}
}
```
FailServlet.java
```java
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;
@WebServlet("/FailServlet")
public class FailServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public FailServlet() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html");
response.getWriter().println("<h1>Login failed</h1>");
}
}
```
在以上代码中,使用了 Servlet 和 JSP 技术,当用户在表单中输入用户名和密码并提交后,LoginServlet 接收参数并判断是否相等,如果相等则跳转到 SuccessServlet 并传递用户名,否则跳转到 FailServlet。SuccessServlet 和 FailServlet 分别用于显示登录成功和登录失败的页面。