SSM项目简单实现密码修改的代码
时间: 2024-01-30 11:03:41 浏览: 108
密码修改 代码
3星 · 编辑精心推荐
好的,以下是SSM项目中实现密码修改的代码参考:
在Controller中:
```
@RequestMapping("/changePassword")
public String changePassword(HttpServletRequest request, Model model) {
String oldPassword = request.getParameter("oldPassword");
String newPassword = request.getParameter("newPassword");
String confirmPassword = request.getParameter("confirmPassword");
User user = (User) request.getSession().getAttribute("user");
if (user != null) {
// 验证旧密码是否正确
if (user.getPassword().equals(oldPassword)) {
// 验证新密码和确认密码是否一致
if (newPassword.equals(confirmPassword)) {
// 更新密码
user.setPassword(newPassword);
userService.updateUser(user);
return "redirect:/logout";// 修改成功后退出重新登录
} else {
model.addAttribute("msg", "新密码和确认密码不一致!");
}
} else {
model.addAttribute("msg", "旧密码不正确!");
}
}
return "changePassword";
}
```
在Service中:
```
@Override
public void updateUser(User user) {
userDao.updateUser(user);
}
```
在Dao中:
```
void updateUser(User user);
```
上述代码中,changePassword方法是密码修改的入口点,首先获取请求中的旧密码、新密码和确认密码,然后通过session获取当前登录的用户实体对象。接着,验证旧密码是否正确,如果正确就验证新密码和确认密码是否一致,如果一致就更新密码。更新密码的过程调用了userService中的updateUser方法,而updateUser方法调用了userDao中的updateUser方法,实现了修改密码的操作。
阅读全文