制作一个简单的用户登录页面,包含用户名和密码。提交方式设置post。 2、编写一个Servlet类,在该类中获取表单提交的用户名和密码,并验证身份。验证通过,输出用户名;否则,跳转登录页面
时间: 2024-09-14 15:08:23 浏览: 85
使用JSP、JavaBean和Servlet完成一个简单的留言板设计(包含完整源代码+数据库+程序截图+中文显示数据)
5星 · 资源好评率100%
要制作一个简单的用户登录页面,并通过Servlet类处理登录请求,我们需要进行以下步骤:
1. 创建登录页面(HTML + 表单)
```html
<!DOCTYPE html>
<html>
<head>
<title>登录页面</title>
</head>
<body>
<form action="login" method="post">
<label for="username">用户名:</label>
<input type="text" id="username" name="username" required>
<br><br>
<label for="password">密码:</label>
<input type="password" id="password" name="password" required>
<br><br>
<input type="submit" value="登录">
</form>
</body>
</html>
```
注意:这里假设Servlet的URL映射为`/login`,即表单提交的目标地址。
2. 编写Servlet类
```java
import java.io.IOException;
import java.io.PrintWriter;
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("/login")
public class LoginServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 设置请求和响应的编码
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
// 获取用户名和密码
String username = request.getParameter("username");
String password = request.getParameter("password");
// 这里应该调用一个用户服务或者验证系统来检查用户名和密码是否正确
// 假设验证函数为validateUser(String, String),返回布尔值表示验证是否成功
boolean isValidUser = validateUser(username, password);
// 根据验证结果作出相应处理
if (isValidUser) {
// 验证成功,输出用户名
PrintWriter out = response.getWriter();
out.println("欢迎 " + username);
} else {
// 验证失败,跳转回登录页面
response.sendRedirect("login.html"); // 假设登录页面为login.html
}
}
// 验证用户的方法,此处应与实际的用户验证逻辑一致
private boolean validateUser(String username, String password) {
// 这里仅为示例,实际开发中应连接数据库进行验证
return "admin".equals(username) && "123456".equals(password);
}
}
```
注意:在实际应用中,验证用户的方法`validateUser`应当通过数据库查询来验证用户名和密码是否匹配,而不是简单的字符串比较。同时,为了安全起见,密码在数据库中应当是加密存储的。
阅读全文