JAVA全系列 教程
3762个小节阅读:7091.4k
目录
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
在通用模块编写MD5加密工具类,用于给用户密码进行加密和验证
xxxxxxxxxx
public class Md5Util {
public final static String md5key = "BAIZHAN"; // 秘钥
/**
* 加密
* @param text 明文
* @return 密文
*/
public static String encode(String text){
return DigestUtils.md5Hex(text + md5key);
}
/**
* 验证
*
* @param text 明文
* @param cipher 密文
* @return true/false
*/
public static boolean verify(String text, String cipher){
// 将明文转为密文进行比对
String md5Text = encode(text);
if (md5Text.equalsIgnoreCase(cipher)) {
return true;
}
return false;
}
}
在用户服务模块编写用户服务接口实现类
xxxxxxxxxx
@Override
public void register(ShoppingUser shoppingUser) {
// 1.验证手机号是否存在
String phone = shoppingUser.getPhone();
QueryWrapper<ShoppingUser> queryWrapper = new QueryWrapper();
queryWrapper.eq("phone", phone);
List<ShoppingUser> shoppingUsers = shoppingUserMapper.selectList(queryWrapper);
if (shoppingUsers != null && shoppingUsers.size() > 0) {
throw new BusException(CodeEnum.REGISTER_REPEAT_PHONE_ERROR);
}
// 2.验证用户名是否存在
String username = shoppingUser.getUsername();
QueryWrapper<ShoppingUser> queryWrapper1 = new QueryWrapper();
queryWrapper1.eq("username", username);
List<ShoppingUser> shoppingUsers1 = shoppingUserMapper.selectList(queryWrapper1);
if (shoppingUsers1 != null && shoppingUsers1.size() > 0) {
throw new BusException(CodeEnum.REGISTER_REPEAT_NAME_ERROR);
}
// 3.新增用户
shoppingUser.setStatus("Y");
shoppingUser.setPassword(Md5Util.encode(shoppingUser.getPassword()));
shoppingUserMapper.insert(shoppingUser);
}
在用户API模块编写控制器
xxxxxxxxxx
/**
* 用户注册
* @param shoppingUser 用户信息
* @return 注册结果
*/
@PostMapping("/register")
public BaseResult register(@RequestBody ShoppingUser shoppingUser){
shoppingUserService.register(shoppingUser);
return BaseResult.ok();
}
测试控制器