mirror of
https://gitee.com/dromara/sa-token.git
synced 2024-12-05 05:17:54 +08:00
c62f61755f
常量说明中 SaSession.ROLE_LIST= "USER"; // 在Session 上存储用户对象时建议使用的key 写成了角色的值SaSession.ROLE_LIST,应该为SaSession.USER Signed-off-by: 小可开源 <2479427380@qq.com>
78 lines
3.4 KiB
Markdown
78 lines
3.4 KiB
Markdown
# SaSession-会话对象
|
||
|
||
SaSession-会话对象,专业数据缓存组件。
|
||
|
||
---
|
||
|
||
### 1、常量
|
||
``` java
|
||
SaSession.USER= "USER"; // 在 Session 上存储用户对象时建议使用的key
|
||
SaSession.ROLE_LIST = "ROLE_LIST"; // 在 Session 上存储角色时建议使用的key
|
||
SaSession.PERMISSION_LIST = "PERMISSION_LIST"; // 在 Session 上存储权限时建议使用的key
|
||
```
|
||
|
||
|
||
### 2、构建相关
|
||
``` java
|
||
session.getId(); // 获取此 Session 的 id
|
||
session.setId(id); // 写入此 Session 的 id
|
||
session.getCreateTime(); // 返回当前会话创建时间(时间戳)
|
||
session.setCreateTime(createTime); // 写入此 Session 的创建时间(时间戳)
|
||
```
|
||
|
||
|
||
### 3、TokenSign 相关
|
||
``` java
|
||
session.setTokenSignList(tokenSignList); // 写入此 Session 绑定的 Token 签名列表
|
||
session.getTokenSignList(); // 获取此 Session 绑定的 Token 签名列表
|
||
session.tokenSignListCopy(); // 获取 Token 签名列表 的拷贝副本
|
||
session.tokenSignListCopyByDevice(device); // 返回 Token 签名列表 的拷贝副本,根据 device 筛选
|
||
session.getTokenSign(tokenValue); // 查找一个 Token 签名
|
||
session.addTokenSign(tokenSign); // 添加一个 Token 签名
|
||
session.addTokenSign(tokenValue, device); // 添加一个 Token 签名
|
||
session.removeTokenSign(tokenValue); // 移除一个 Token 签名
|
||
```
|
||
|
||
|
||
### 4、一些操作
|
||
``` java
|
||
session.update(); // 更新Session(从持久库更新刷新一下)
|
||
session.logout(); // 注销Session (从持久库删除)
|
||
session.logoutByTokenSignCountToZero(); // 当Session上的tokenSign数量为零时,注销会话
|
||
session.getTimeout(); // 获取此Session的剩余存活时间 (单位: 秒)
|
||
session.updateTimeout(timeout); // 修改此Session的剩余存活时间
|
||
session.updateMinTimeout(minTimeout); // 修改此Session的最小剩余存活时间 (只有在 Session 的过期时间低于指定的 minTimeout 时才会进行修改)
|
||
session.updateMaxTimeout(maxTimeout); // 修改此Session的最大剩余存活时间 (只有在 Session 的过期时间高于指定的 maxTimeout 时才会进行修改)
|
||
session.trans(value); // value为 -1 时返回 Long.MAX_VALUE,否则原样返回
|
||
```
|
||
|
||
|
||
### 5、存取值
|
||
``` java
|
||
session.get(key); // 取值
|
||
session.get(key, defaultValue); // 取值 (指定默认值)
|
||
session.get(key, () -> {}); // 取值 (如果值为 null,则执行 fun 函数获取值,并把函数返回值写入缓存)
|
||
session.getString(key); // 取值 (转String类型)
|
||
session.getInt(key); // 取值 (转int类型)
|
||
session.getLong(key); // 取值 (转long类型)
|
||
session.getDouble(key); // 取值 (转double类型)
|
||
session.getFloat(key); // 取值 (转float类型)
|
||
session.getModel(key, clazz); // 取值 (指定转换类型)
|
||
session.getModel(key, clazz, defaultValue); // 取值 (指定转换类型, 并指定值为Null时返回的默认值)
|
||
session.has(key); // 是否含有某个key
|
||
session.set(key, value); // 写值
|
||
session.setByNull(key, value); // 写值 (只有在此 key 原本无值的情况下才会写入)
|
||
session.delete(key); // 删值
|
||
session.keys(); // 返回当前Session的所有key
|
||
session.clear(); // 清空所有值
|
||
session.getDataMap(); // 获取数据挂载集合(如果更新map里的值,请调用session.update()方法避免产生脏数据 )
|
||
session.refreshDataMap(dataMap); // 写入数据集合 (不改变底层对象,只将此dataMap所有数据进行替换)
|
||
```
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|