完善文档

This commit is contained in:
2020-02-06 00:52:49 +08:00
parent 3329910bdd
commit 8efce61988
28 changed files with 979 additions and 19 deletions

View File

@@ -5,6 +5,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
import com.fasterxml.jackson.core.JsonProcessingException;
import cn.dev33.satoken.SaTokenManager;
import cn.dev33.satoken.spring.SaTokenSetup;
@SaTokenSetup // 标注启动 sa-token
@@ -13,6 +14,12 @@ public class SaTokenDemoApplication {
public static void main(String[] args) throws JsonProcessingException {
SpringApplication.run(SaTokenDemoApplication.class, args); // run-->
System.out.println("启动成功sa-token配置如下" + SaTokenManager.getConfig());
}
}

View File

@@ -0,0 +1,29 @@
//package com.pj.satoken;
//
//import org.springframework.context.annotation.Bean;
//import org.springframework.context.annotation.Configuration;
//import org.springframework.context.annotation.Primary;
//
//import cn.dev33.satoken.config.SaTokenConfig;
//
///**
// * sa-token代码方式进行配置
// */
//@Configuration
//public class MySaTokenConfig {
//
// // 获取配置Bean
// @Primary
// @Bean(name="MySaTokenConfig")
// public SaTokenConfig getSaTokenConfig() {
// SaTokenConfig config = new SaTokenConfig();
// config.setTokenName("satoken"); // token名称同时也是cookie名称
// config.setTimeout(30 * 24 * 60 * 60); // token有效期单位s 默认30天-1为永不过期
// config.setIsShare(true); // 在多人登录同一账号时是否共享会话为true时共用一个为false时新登录挤掉旧登录
// config.setIsReadHead(true); // 是否在cookie读取不到token时继续从请求header里继续尝试读取
// config.setIsReadBody(true); // 是否在cookie读取不到token时继续从请求header里继续尝试读取
// config.setIsV(true); // 是否在初始化配置时打印版本字符画
// return config;
// }
//
//}

View File

@@ -13,9 +13,10 @@ import cn.dev33.satoken.stp.StpInterface;
@Component // 打开此注解保证此类被springboot扫描即可完成sa-token的自定义权限验证扩展
public class StpCustom implements StpInterface {
// 返回一个账号所拥有的权限码集合
@Override
public List<Object> getPermissionCodeList(Object login_id, String login_key) {
List<Object> list = new ArrayList<Object>();
List<Object> list = new ArrayList<Object>(); // 本list仅做模拟实际项目中要根据具体业务逻辑来查询权限
list.add("101");
list.add("user-add");
list.add("user-delete");

View File

@@ -4,7 +4,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import cn.dev33.satoken.session.SaSessionUtil;
import cn.dev33.satoken.session.SaSessionCustomUtil;
import cn.dev33.satoken.stp.StpUtil;
@RestController
@@ -22,9 +22,16 @@ public class TestController {
System.out.println("登录成功");
System.out.println("当前是否登录:" + StpUtil.isLogin());
System.out.println("当前登录账号:" + StpUtil.getLoginId());
System.out.println("当前登录账号:" + StpUtil.getLoginId_asInt()); // 获取登录id并转为int
System.out.println("当前登录账号:" + StpUtil.getLoginId_asInt()); // 获取登录id并转为int
// StpUtil.logout();
// System.out.println("注销登录");
// System.out.println("当前是否登录:" + StpUtil.isLogin());
// System.out.println("当前登录账号:" + StpUtil.getLoginId_defaultNull());
// StpUtil.setLoginId(id); // 在当前会话登录此账号
System.out.println("当前token信息" + StpUtil.getTokenInfo()); // 获取登录id并转为int
System.out.println("当前登录账号:" + StpUtil.getLoginId_defaultNull());
return AjaxJson.getSuccess();
}
@@ -70,11 +77,11 @@ public class TestController {
public AjaxJson session2() {
System.out.println("======================= 进入方法测试自定义session接口 ========================= ");
// 自定义session就是无需登录也可以使用 的session :比如拿用户的手机号当做 key 来获取 session
System.out.println("自定义 session的id为" + SaSessionUtil.getSessionById("1895544896").getId());
System.out.println("测试取值name" + SaSessionUtil.getSessionById("1895544896").getAttribute("name"));
SaSessionUtil.getSessionById("1895544896").setAttribute("name", "张三"); // 写入值
System.out.println("测试取值name" + SaSessionUtil.getSessionById("1895544896").getAttribute("name"));
System.out.println("测试取值name" + SaSessionUtil.getSessionById("1895544896").getAttribute("name"));
System.out.println("自定义 session的id为" + SaSessionCustomUtil.getSessionById("1895544896").getId());
System.out.println("测试取值name" + SaSessionCustomUtil.getSessionById("1895544896").getAttribute("name"));
SaSessionCustomUtil.getSessionById("1895544896").setAttribute("name", "张三"); // 写入值
System.out.println("测试取值name" + SaSessionCustomUtil.getSessionById("1895544896").getAttribute("name"));
System.out.println("测试取值name" + SaSessionCustomUtil.getSessionById("1895544896").getAttribute("name"));
return AjaxJson.getSuccess();
}