用户修改密码的前端:
点击查看代码
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page isELIgnored="false" %>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Change Password</title>
</head>
<body>
<h1>修改密码</h1>
<c:if test="${not empty message}">
<div style="color: green;">${message}</div>
</c:if>
<form action="${pageContext.request.contextPath}/ChangePasswordServlet" method="post">
<div>
<label for="oldPassword">原密码:</label>
<input type="password" id="oldPassword" name="oldPassword" required>
</div>
<div>
<label for="newPassword">新密码:</label>
<input type="password" id="newPassword" name="newPassword" required>
</div>
<div>
<label for="confirmNewPassword">确认新密码:</label>
<input type="password" id="confirmNewPassword" name="confirmNewPassword" required>
</div>
<div>
<button type="submit">修改密码</button>
</div>
</form>
</body>
</html>
修改密码对应后端内容:
点击查看代码
package com.QixunQiu.web;
import com.QixunQiu.pojo.User;
import com.QixunQiu.service.UserService;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;
@WebServlet("/ChangePasswordServlet")
public class ChangePasswordServlet extends HttpServlet {
private UserService Userservice= new UserService();
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String oldPassword = request.getParameter("oldPassword");
String newPassword = request.getParameter("newPassword");
String confirmNewPassword = request.getParameter("confirmNewPassword");
if (!newPassword.equals(confirmNewPassword)) {
request.setAttribute("message", "新密码和确认密码不匹配.");
request.getRequestDispatcher("/ChangePassword.jsp").forward(request, response);
return;
}
User user = (User) request.getSession().getAttribute("user");
if (user == null || !user.getPassWord().equals(oldPassword)) {
request.setAttribute("message", "旧密码不正确");
request.getRequestDispatcher("/ChangePassword.jsp").forward(request, response);
return;
}
// 更新密码逻辑
user.setPassWord(newPassword);
// 假设有一个方法来更新数据库中的密码
Userservice.updateUser(user);
request.setAttribute("message", "修改成功");
request.getRequestDispatcher("/login.html").forward(request, response);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doGet(request, response);
}
}
来源链接:https://www.cnblogs.com/qiixunlu/p/18631671









没有回复内容