• springboot+html实现密码重置功能


    目录

    登录注册:

    前端:

    chnangePssword.html

    后端:

    controller:

    Mapper层:

    逻辑:

     

     


    登录注册

    https://blog.csdn.net/m0_67930426/article/details/133849132

    前端:

    通过点击忘记密码跳转到密码重置页面

    chnangePssword.html

    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <title>Titletitle>
    6. <link href="/css/style.css" type="text/css" rel="stylesheet">
    7. head>
    8. <body>
    9. <div class="control">
    10. <div class="item">
    11. <div class="active">密码重置div>
    12. div>
    13. <div class="content">
    14. <div style="display: block;">
    15. <form action="/user/changePassword" method="post">
    16. <p>请输入用户名p>
    17. <input type="text" placeholder="请输入用户名" name="username"/>
    18. <p>请输入新密码p>
    19. <input type="password" placeholder="请输入新密码" name="password"/>
    20. <p>请再次输入密码p>
    21. <input type="password" placeholder="请再输入密码" name="Repassword"/>
    22. <br/>
    23. <input type="submit" value="确定"/>
    24. form>
    25. <a href="/user/login" target="top">返回登录a>
    26. div>
    27. div>
    28. div>
    29. body>
    30. html>

    后端:

    controller:

    1. @RequestMapping("/changePassword")
    2. public String changePassword(User user,Model m){
    3. User user1=userMapper.findUserByName(user.getUsername());
    4. if(user1==null) {
    5. m.addAttribute("msg","该用户不存在");
    6. return "html/changePassword";
    7. }
    8. String password=request.getParameter("password");
    9. if(password==null||password.isEmpty()){
    10. m.addAttribute("msg","密码输入时不能为空");
    11. return "html/changePassword";
    12. }
    13. String Repassword=request. getParameter("Repassword");
    14. if(Repassword==null||Repassword.isEmpty()){
    15. m.addAttribute("msg","密码输入时不能为空");
    16. return "html/changePassword";
    17. }
    18. if(!password.equals(Repassword)) {
    19. m.addAttribute("msg", "两次输入的密码不一致");
    20. return "html/changePassword";
    21. }
    22. else{
    23. user1.setPassword(password);
    24. userMapper.updateByUserName(user.getUsername(),user.getPassword());
    25. return "html/login";
    26. }
    27. }
    28. }

    Mapper层:

    1. @Mapper
    2. public interface UserMapper extends BaseMapper {
    3. @Select(value = "select u.username,u.password from user u where u.username=#{username}")
    4. User findUserByName(@Param("username") String username);
    5. @Update(value = "update `user` u set u.password = #{password} where u.username=#{username} ")
    6. void updateByUserName(@Param("username") String username,@Param("password") String password);
    7. }

    逻辑:

    1.先判断要重置密码的用户是否在数据库中存在,如果如果存在就执行下一个操作

    2.第一次填写密码时不能为空

    2.第二次填写密码时(确认密码),不能为空

    3.第一次填写的(password)和第二次填写的(Repassword)要相等

    符合上面所有条件才可通过(返回登录)这一按钮返回到登录界面

    调试:

    更改前:

    更改后:

  • 相关阅读:
    kubernetes-工作负载-Deployment
    Linux V4L2编程和驱动底层分析
    Unity --- 反向动力学(IK)
    HOOPS Communicator对3D大模型轻量化加载与渲染的4种解决方案
    pyqt5 学习笔记六(QFormLayout)表单布局器
    linux下golang环境安装教程(学习笔记)
    如何让自己的SpringBoot程序在Windows环境下打包运行?
    [自制操作系统] 第09回 加载内核
    【优化算法】新型多目标热交换MOTEO优化算法(Matlab代码实现)
    【RPC】gRPC 安装及使用
  • 原文地址:https://blog.csdn.net/m0_67930426/article/details/133903306