问题:员工表中的密码是明文存储,安全性低
- 将密码加密后存储,提高安全性
- 使用MD5加密方式对明文密码加密
- MD5加密方式是不可逆的,只能明文加密,不能由密文算出明文,所以只能再对一个明文加密然后和数据库中的密文比对
完善的地方
- 修改数据库中的明文密码,改为MD5加密后的密文
- 修改JAVA代码,前端提交的密码进行MD5加密后再跟数据库中的密码进行比对
// EmployeeServiceImpl.java
// 进行md5加密,然后再进行比对
// DigestUtils.md5DigestAsHex()将明文转为密文
password = DigestUtils.md5DigestAsHex(password.getBytes()); //先转成Byte数组,就加了这一句
if (!password.equals(employee.getPassword())) {
//密码错误,比对不上,抛出异常,异常信息在异常常量类里
hrow new PasswordErrorException(MessageConstant.PASSWORD_ERROR); // 密码错误异常
}