后台登录功能
- 需求分析
- 代码开发
统一封装结果R
package com.wcj.reggie.common;
import lombok.Data;
import java.util.HashMap;
import java.util.Map;
/*
* 通用返回结果类
* */
@Data
public class R<T> {
private Integer code; //编码:1成功,0和其它数字为失败
private String msg; //错误信息
private T data; //数据
private Map map = new HashMap(); //动态数据
public static <T> R<T> success(T object) {
R<T> r = new R<T>();
r.data = object;
r.code = 1;
return r;
}
public static <T> R<T> error(String msg) {
R r = new R();
r.msg = msg;
r.code = 0;
return r;
}
public R<T> add(String key, Object value) {
this.map.put(key, value);
return this;
}
}
登录的处理逻辑
- 使用LambdaQueryWrapper<>()根据用户名进行查找,并将其查询结果封装为实体类对象emp
- 先判断emp是否为空,再比较传入参数password与emp.password是否相等,最后检查该用户的状态status
- 若以上均满足条件,则将emp.id存入session中
后台退出功能
- 需求分析
点击退出,返回登录页面
分析前端页面
- 代码开发
@PostMapping("/logout") public R<String> logout(HttpServletRequest request){ //清理session中的员工id request.getSession().removeAttribute("employee"); return R.success("退出成功!"); }
- 测试需求
(以上仅为记录学习的笔记,请各位大佬多多指教)