课程名称:Java支付全家桶 企业级各类支付手段一站式解决方案
课程章节:5-2 封装用户登陆的后端模块?
主讲老师:神思者
课程内容:
今天课程学习的主要知识点内容包括:
开发用户登录网页模块的各个开发步骤和具体实现。
课程收获:
开发用户登录网页模块的各个开发步骤和具体实现如下:
(1)tep1: 定义登录表单 LoginForm,主要代码如下:
@Data
@ApiModel(value = "登录表单")
public class LoginForm {
@ApiModelProperty(value = "用户名")
@NotBlank(message="用户名不能为空")
@Pattern(regexp = "^[A-Za-z0-9]{3,20}$", message = "用户名格式错误")
private String username;
@ApiModelProperty(value = "密码")
@NotBlank(message="密码不能为空")
@Pattern(regexp = "^[A-Za-z0-9]{6,20}$", message = "密码格式错误")
private String password;
}
学习到了如何使用正则表达式校验表单参数,如
@Pattern(regexp = "^[A-Za-z0-9]{6,20}$", message = "密码格式错误")
(2)tep2:修改用户服务实现类 UserServiceImpl 中的登录逻辑实现,实现根据用户账号查找用户,并进行用户的验证,主要代码如下:
@Override
public long login(LoginForm form) {
UserEntity user = baseMapper.selectOne(
Wrappers.<UserEntity>lambdaQuery()
.eq(UserEntity::getUsername, form.getUsername())
.last("limit 1")
);
Assert.isNull(user, "账号或密码错误");
//密码错误
if(!user.getPassword().equals(DigestUtils.sha256Hex(form.getPassword()))){
throw new RRException("账号或密码错误");
}
return user.getUserId();
}
(3)一边看视频学习,一边配套查找资料思考,可以收获到更多的知识点。
学习到了使用Mybabis-Plus中通过继承框架中服务类提供的默认实现的方法,实现单表操作,不需要再像原来使用Mybabis一样每个和数据库交互的查询、修改等操作都需要通过xml配置文件自定义编写SQL来实现,从而提升了尅发效率;
和视频里面的queryWrapper方式相比,这里额外关联学习了使用lambdaQuery的用法。
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
相关文章推荐
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦