diff --git a/sa-token-doc/doc/README.md b/sa-token-doc/doc/README.md index 9bbadb78f9444530e27c3f8189ebbbb61904ba81..7dcb603d04ad36bd166e923945707d2734daa632 100644 --- a/sa-token-doc/doc/README.md +++ b/sa-token-doc/doc/README.md @@ -1,5 +1,5 @@

- logo + logo

sa-token v1.12.0

这可能是史上功能最全的Java权限认证框架!

@@ -27,14 +27,14 @@ - [开源不易,求鼓励,点个star吧](###) -## sa-token是什么? -sa-token是一个JavaWeb轻量级权限认证框架,主要解决项目中登录认证、权限认证、Session会话等一系列由此衍生的权限相关业务 +## Sa-Token是什么? +sa-token是一个轻量级Java权限认证框架,主要解决: 登录认证、权限认证、Session会话 等一系列权限相关问题 -在架构设计上`sa-token`拒绝引入复杂的概念,以实际业务需求为第一目标进行定向突破,例如踢人下线、自动续签、同端互斥登录等常见业务在框架内均可以一行代码调用实现,简单粗暴,拒绝复杂! +在架构设计上,`sa-token`拒绝引入复杂的概念,以实际业务需求为第一目标进行定向突破,例如踢人下线、自动续签、同端互斥登录等常见业务在框架内**均可以一行代码调用实现**,简单粗暴,拒绝复杂! 对于传统Session会话模型的N多难题,例如难以分布式、水平扩展性差,难以兼容前后台分离环境,多会话管理混乱等, -`sa-token`独创了以账号为主的`Id-Session`模式,同时又兼容了传统以token为主的`Token-Session`模式,两者彼此独立,互不干扰, -让你在进行会话管理时可以如鱼得水,在`sa-toekn`的强力加持下,权限问题将不再成为业务逻辑的瓶颈! +`sa-token`独创了以账号为主的`User-Session`模式,同时又兼容传统以token为主的`Token-Session`模式,两者彼此独立,互不干扰, +让你在进行会话管理时如鱼得水,在`sa-toekn`的强力加持下,权限问题将不再成为业务逻辑的瓶颈! 总的来说,与其它权限认证框架相比,`sa-token`具有以下优势: 1. 上手简单:可零配置启动框架,能自动化的均已自动化,不让你费脑子 @@ -42,7 +42,7 @@ sa-token是一个JavaWeb轻量级权限认证框架,主要解决项目中登 3. API简单易用:同样的一个功能,可能在别的框架中需要上百行代码,但是在sa-token中统统一行代码调个方法即可解决 4. 组件易于扩展:框架中几乎所有组件都提供了对应的扩展接口,90%以上的逻辑都是可以被按需重写的 -有了sa-token,是时候和那些老旧权限框架说拜拜了! +有了sa-token,你所有的权限认证问题,都不再是问题! ## 代码示例 @@ -57,6 +57,21 @@ StpUtil.setLoginId(10001); StpUtil.checkLogin(); ``` +权限认证示例 (只有具有`user:add`权限的会话才可以进入请求) +``` java +@SaCheckPermission("user:add") +@RequestMapping("/user/insert") +public String insert(SysUser user) { + return "用户增加"; +} +``` + +将某个账号踢下线 (待到对方再次访问系统时会抛出`NotLoginException`异常) +``` java +// 使账号id为10001的会话注销登录 +StpUtil.logoutByLoginId(10001); +``` + 如果上面的示例能够证明`sa-token`的简单,那么以下API则可以证明`sa-token`的强大 ``` java StpUtil.setLoginId(10001); // 标记当前会话登录的账号id diff --git a/sa-token-doc/doc/index.html b/sa-token-doc/doc/index.html index 7166aaa9e4de769252e46c71a57f3805e75335e2..3f04407474187395216d1a340487ec41af96c3d9 100644 --- a/sa-token-doc/doc/index.html +++ b/sa-token-doc/doc/index.html @@ -46,7 +46,7 @@ name: name, // 名字 repo: 'https://github.com/click33/sa-token', // github地址 // themeColor: '#06A3D7', // 主题颜色 - basePath: location.pathname.substr(0, location.pathname.lastIndexOf('/') + 1), // 自动计算项目名字 + basePath: location.pathname.substr(0, location.pathname.lastIndexOf('/') + 1), // 自动计算项目名字 // basePath: '/sa-token-doc/', // 设置文件加载的父路径, 这在一些带项目名部署的文件中非常有效 auto2top: true, // 是否在切换页面后回到顶部 // coverpage: true, // 开启封面 @@ -61,7 +61,7 @@ alias: { '/.*/_sidebar.md': '/_sidebar.md' }, - plugins: [ // 自定义插件 + plugins: [ // 自定义插件 function(hook, vm) { // 解析之后执行 hook.afterEach(function(html) { @@ -70,13 +70,14 @@ var footer = [ '







', '' ].join(''); return html + footer; }); } - ] + ] } @@ -101,5 +102,28 @@ + + + + + + diff --git a/sa-token-doc/doc/lib/index.css b/sa-token-doc/doc/lib/index.css index f45abd7662b0f0d638651814931e5dc77d354938..72afe3e0152aa514b7542ee269eb9b7ebec93055 100644 --- a/sa-token-doc/doc/lib/index.css +++ b/sa-token-doc/doc/lib/index.css @@ -40,6 +40,7 @@ .lang-js .token.string{color: #ddd;} .lang-js .token.punctuation{color: #ddd;} +.gt-container{padding: 1.5em; padding-bottom: 100px;} /* 调整表格的响应式 */ #main table{margin-left: 25px;}