对数据库密码使用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
相关推荐
岁岁种桃花儿2 分钟前
AI超级智能开发系列从入门到上天第十篇:SpringAI+云知识库服务
linux·运维·数据库·人工智能·oracle·llm
CHQIUU10 分钟前
PostgreSQL vs MySQL:选型指南与深度对比
数据库·mysql·postgresql
qq_4160187222 分钟前
Python多线程与多进程:如何选择?(GIL全局解释器锁详解)
jvm·数据库·python
m0_6625779726 分钟前
用Python生成艺术:分形与算法绘图
jvm·数据库·python
娇娇yyyyyy43 分钟前
QT编程(19) : Qt 实现自定义delegate
开发语言·数据库·qt
polaris06301 小时前
学生成绩管理系统(MySQL)
android·数据库·mysql
暮冬-  Gentle°1 小时前
用Python制作一个文字冒险游戏
jvm·数据库·python
woshilys1 小时前
sql server 修改字段not null到null
数据库·sqlserver
m0_587958951 小时前
游戏与图形界面(GUI)
jvm·数据库·python
常利兵1 小时前
Android 开发探秘:View.post()为何能获取View宽高
java·数据库·sql