記錄一下使用springSecurity搭建用戶認證和授權的代碼、、、 技術棧使用springSecurity + redis + JWT + mybatisPlus 部分代碼來自:https://blog.csdn.net/I_am_Hutengfei/article/details/100561 ...
記錄一下使用springSecurity搭建用戶認證和授權的代碼、、、
技術棧使用springSecurity + redis + JWT + mybatisPlus
部分代碼來自:https://blog.csdn.net/I_am_Hutengfei/article/details/100561564
零. 共用工具類和sql
1.工具類
@Data
public class JsonResult<T> implements Serializable {
private Boolean success;
private Integer errorCode;
private String errorMsg;
private T data;
public JsonResult() {
}
public JsonResult(Boolean success, Integer errorCode, String errorMsg, T data) {
this.success = success;
this.errorCode = errorCode;
this.errorMsg = errorMsg;
this.data = data;
}
// 成功或者失敗都能走這個
public JsonResult(boolean success) {
this.success = success;
this.errorMsg = success ? ResultCode.SUCCESS.getMessage() : ResultCode.COMMON_FAIL.getMessage();
this.errorCode = success ? ResultCode.SUCCESS.getCode() : ResultCode.COMMON_FAIL.getCode();
}
// 成功或者失敗都能走這個,並且可以傳一個枚舉來改變預設枚舉的值
public JsonResult(boolean success, ResultCode resultEnum) {
this.success = success;
// 傳來的枚舉為null就用預設的,不為null就用傳來的枚舉
this.errorCode = success ? (resultEnum==null?ResultCode.SUCCESS.getCode():resultEnum.getCode()) : (resultEnum == null ? ResultCode.COMMON_FAIL.getCode() : resultEnum.getCode());
this.errorMsg = success ? (resultEnum==null?ResultCode.SUCCESS.getMessage():resultEnum.getMessage()): (resultEnum == null ? ResultCode.COMMON_FAIL.getMessage() : resultEnum.getMessage());
}
// 成功或者失敗都能用
// 用戶可以傳一個任意對象過來,用預設的成功或者失敗的枚舉
public JsonResult(boolean success, T data) {
this.success = success;
this.errorCode = success ? ResultCode.SUCCESS.getCode() : ResultCode.COMMON_FAIL.getCode();
this.errorMsg = success ? ResultCode.SUCCESS.getMessage() : ResultCode.COMMON_FAIL.getMessage();
this.data = data;
}
// 成功或者失敗都能用
// 用戶可以傳一個任意對象和自定義枚舉過來
public JsonResult(boolean success, ResultCode resultEnum, T data) {
this.success = success;
this.errorCode = success ? (resultEnum