对数据库密码使用MD5加密算法加密,并进行登录验证

实现步骤:

  1. 修改数据库中明文密码,改为MD5加密后的密文

    打开employee表,修改密码

  2. 修改Java代码,前端提交的密码进行MD5加密后再跟数据库中密码比对

    打开EmployeeServiceImpl.java,修改比对密码

    java 复制代码
    /**
         * 员工登录
         *
         * @param employeeLoginDTO
         * @return
         */
        public Employee login(EmployeeLoginDTO employeeLoginDTO) {
    
            //1、根据用户名查询数据库中的数据
           
            //2、处理各种异常情况(用户名不存在、密码不对、账号被锁定)
            //.......
            //密码比对
            // TODO 后期需要进行md5加密,然后再进行比对
            password = DigestUtils.md5DigestAsHex(password.getBytes());
            if (!password.equals(employee.getPassword())) {
                //密码错误
                throw new PasswordErrorException(MessageConstant.PASSWORD_ERROR);
            }
    
            //........
    
            //3、返回实体对象
            return employee;
        }

核心代码:

cpp 复制代码
        password=DigestUtils.md5DigestAsHex(password.getBytes());

使用Spring内部的工具类和方法:

cpp 复制代码
DigestUtils.md5DigestAsHex
相关推荐
环流_16 小时前
Redis过期策略
数据库·redis·缓存
北秋,16 小时前
Web Security Academy 第四关:SQL 注入查询 MySQL / SQL Server 版本
数据库·sql·mysql
2401_8246976616 小时前
如何实现SQL存储过程状态监控_编写实时运行监控仪表盘
jvm·数据库·python
Mike117.16 小时前
GBase 8c MOT 内存表落地前要先画清楚边界
服务器·数据库
iAm_Ike16 小时前
c++怎么在写入文件流时通过peek预读功能实现复杂的逻辑判断【实战】
jvm·数据库·python
dFObBIMmai16 小时前
mysql如何确保主从数据完全同步_开启半同步复制机制
jvm·数据库·python
2501_9307077816 小时前
使用C#代码压平 PDF 表单字段
数据库·pdf·c#
m0_4708576416 小时前
CSS如何实现Bootstrap进度条自定义动画_利用keyframe关键帧
jvm·数据库·python
treesforest16 小时前
IP数据库下载完全指南:免费与商业IP定位库对比
网络·数据库·php
书语时16 小时前
单体 MySQL 支撑业务的上限一般从哪里先触顶?如何论证瓶颈在 DB?
数据库·mysql