文章申明:转载来源:https://blog.csdn.net/weixin_47777564/article/details/122271168
首先我们对用户的字符串进行判断是否为空,不为空我们进入下一步验证;
// isBlank:检查字符串是否为空或是否为null
if(StringUtils.isBlank(account) || StringUtils.isBlank(password)) {
return Result.fail(ErrorCode.ACCOUNT_PWD_NOT_EXIST.getCode(),ErrorCode.ACCOUNT_PWD_NOT_EXIST.getMsg());
}
下一步我们对用户的密码输入进行MD5加密,对用户的安全性进行进一步的加固;
password = DigestUtils.md5Hex(password+SLAT);
Result.fail(ErrorCode.ACCOUNT_PWD_NOT_EXIST.getCode(),ErrorCode.ACCOUNT_PWD_NOT_EXIST.getMsg());
}
然后我们判断用户登录为用户名,电话或是邮箱;
loginparams.setPassword(password);
// 登录有用户名,电话,邮箱三种方式
最后,我们这三份数据输入数据库进行对比,如果数据作为数据导入,只要对应的上不为空,即为登录成功
@Override
public Users checkLoginByWhat(Loginparams loginparams) {
String account = loginparams.getAccount();
String password = loginparams.getPassword();
String[] colums = {"nickname","email","phone"};
for(String cloum : colums) {
Users user = usersService.findUserMsg(cloum,account,password);
if(user != null) {
return user;
}
}
return null;
}
@Override
public Users findUserMsg(String colum, String account, String password) {
QueryWrapper usersQueryWrapper = new QueryWrapper<>();
usersQueryWrapper.eq(colum,account)
.eq("password",password);
return usersMapper.selectOne(usersQueryWrapper);
}
太好了,明了易懂,感谢
设计行业没有个五六年经验都不好意思说自己是设计师