1 实现用户登录
思路:1 首先一个独一无二的token标识符,返回给用户,用来标识已经登录的用户
2 用户将token保存到本地,方便用户下次访问携带
3 定义一个vo 用来使前台确定登录是否成功,与给前台带回返回值
package com.jt.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.io.Serializable;
@Data
@Accessors(chain = true)
@NoArgsConstructor
@AllArgsConstructor
/*
*../本文件的上一集
* #/ 路由
* */
public class SysResult implements Serializable {
private Integer status;//200 业务执行成功 201 业务执行失败
private String msg; // 服务器提示信息
private Object data; // 封装后台的返回值
public static SysResult fail(){
return new SysResult(201,"业务执行失败","null");
}
//会产生BUG,方法的参数有耦合 String msg,与 Object data 产生耦合 比如传一个字符串的data
/* public static SysResult success(String msg){
return new SysResult(200,msg,"null");
}*/
public static SysResult success(){
return new SysResult(200,"业务执行成功","null");
}
public static SysResult success(Object data){
return new SysResult(200,"业务执行成功",data);
}
public static SysResult success(String msg,Object data){
return new SysResult(200,msg,data);
}
}
4 在controller层定义一个token 来接受业务层返回的结果(登录成功,返回一个独一无二的token,登录失败,返回null)
package com.jt.controller;
import com.jt.pojo.User;
import com.jt.service.UserService;
import com.jt.vo.SysResult;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @author 刘昱江
* 时间 2021/5/11
*
* util 写自己需求的工具类
*/
@RestController
/*@CrossOrigin({"localhost:8080","xxx","xxxx"}) 允许个别跨域 */
@CrossOrigin//允许所以服务器访问 添加允许访问在响应头
@RequestMapping("/user")
public class UserController {
@Autowired
private UserService userService;
@PostMapping("/login