首先我们对用户的字符串进行判断是否为空,不为空我们进入下一步验证;
// 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) { QueryWrapperusersQueryWrapper = new QueryWrapper<>(); usersQueryWrapper.eq(colum,account) .eq("password",password); return usersMapper.selectOne(usersQueryWrapper); }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)