2、新建一个Login.jsp,接受表单输入的用户密码,判断用户密码匹配成功(自定义用户和密码)跳转到成功界面,失败跳转到失败界面。
时间: 2024-10-10 12:14:40 浏览: 52
在创建一个名为"Login.jsp"的JSP页面时,首先需要设置HTML表单来获取用户的输入,例如用户名和密码。以下是登录页面的基本结构:
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Login</title>
</head>
<body>
<form action="loginAction.java" method="post">
<label for="username">Username:</label><br>
<input type="text" id="username" name="username"><br>
<label for="password">Password:</label><br>
<input type="password" id="password" name="password"><br>
<input type="submit" value="Login">
</form>
<%
// 这里将根据服务器端的处理结果动态地显示成功或失败信息
String result = (String) request.getAttribute("result");
if ("success".equals(result)) {
out.println("<h2>Login Successful!</h2>");
} else if ("failure".equals(result)) {
out.println("<h2>Login Failed. Please try again.</h2>");
}
%>
</body>
</html>
```
在这个例子中,`loginAction.java`是一个Servlet或者Spring MVC的Controller类,用于接收表单数据并验证密码。这个部分通常是后端逻辑的一部分,示例代码如下:
```java
// loginAction.java (servlet or controller)
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");
// 检查用户名和密码是否匹配自定义用户数据库(这里仅作示例)
boolean isValid = checkUserCredentials(username, password);
request.setAttribute("result", isValid ? "success" : "failure");
// 跳转逻辑
if (isValid) {
RequestDispatcher dispatcher = request.getRequestDispatcher("successPage.jsp");
dispatcher.forward(request, response);
} else {
RequestDispatcher dispatcher = request.getRequestDispatcher("failurePage.jsp");
dispatcher.forward(request, response);
}
}
private boolean checkUserCredentials(String username, String password) {
// 自定义的用户和密码管理逻辑
// 这里只是一个简单的示例,实际应用中应使用数据库查询或其他安全策略
return username.equals("customUser") && password.equals("customPassword");
}
```
当用户提交表单后,如果密码匹配,会跳转到`successPage.jsp`,反之则跳转到`failurePage.jsp`。