diff --git a/sa-token-doc/doc/_sidebar.md b/sa-token-doc/doc/_sidebar.md
index f7370f8f..f06f8155 100644
--- a/sa-token-doc/doc/_sidebar.md
+++ b/sa-token-doc/doc/_sidebar.md
@@ -45,8 +45,9 @@
- [推荐公众号](/more/tj-gzh)
- **附录**
- - [未登录场景值](/fun/not-login-scene)
- - [token有效期详解](/fun/token-timeout)
+ - [Sa-Token认证流程图](/fun/auth-flow)
+ - [未登录场景值详解](/fun/not-login-scene)
+ - [Token有效期详解](/fun/token-timeout)
- [Session模型详解](/fun/session-model)
- [TokenInfo参数详解](/fun/token-info)
- [框架源码所有技术栈](/fun/tech-stack)
diff --git a/sa-token-doc/doc/fun/auth-flow.md b/sa-token-doc/doc/fun/auth-flow.md
new file mode 100644
index 00000000..fd1488fc
--- /dev/null
+++ b/sa-token-doc/doc/fun/auth-flow.md
@@ -0,0 +1,9 @@
+# Sa-Token 认证流程图
+
+---
+
+
+
+
+
+PS:鼠标右键选择 **`[在新窗口打开图片]`** 即可高清模式查看图片。(本流程图使用 [ProcessOn](https://www.processon.com) 绘制完成)
diff --git a/sa-token-doc/doc/index.html b/sa-token-doc/doc/index.html
index 5652cd10..c1c1c9ef 100644
--- a/sa-token-doc/doc/index.html
+++ b/sa-token-doc/doc/index.html
@@ -115,6 +115,8 @@
+
+
diff --git a/sa-token-doc/doc/more/tj-gzh.md b/sa-token-doc/doc/more/tj-gzh.md
index 65d520dc..b8fb7fd6 100644
--- a/sa-token-doc/doc/more/tj-gzh.md
+++ b/sa-token-doc/doc/more/tj-gzh.md
@@ -75,7 +75,7 @@
推荐热门开源软件,介绍新开源项目,报导开源资讯!
-
+
diff --git a/sa-token-doc/doc/start/download.md b/sa-token-doc/doc/start/download.md
index 067c30f9..a1868f23 100644
--- a/sa-token-doc/doc/start/download.md
+++ b/sa-token-doc/doc/start/download.md
@@ -85,23 +85,25 @@ implementation 'cn.dev33:sa-token-core:1.19.0'
``` js
── sa-token
- ├── sa-token-core // [核心] sa-token 核心模块
- ├── sa-token-starter // [整合] sa-token 与其它框架整合
- ├── sa-token-servlet // [整合] sa-token 整合 Servlet容器实现类包
- ├── sa-token-spring-boot-starter // [整合] sa-token 整合 SpringBoot 快速集成
- ├── sa-token-reactor-spring-boot-starter // [整合] sa-token 整合 Reactor响应式编程 快速集成
- ├── sa-token-plugin // [插件] sa-token 插件合集
- ├── sa-token-dao-redis // [插件] sa-token 整合 Redis (使用jdk默认序列化方式)
- ├── sa-token-dao-redis-jackson // [插件] sa-token 整合 Redis (使用jackson序列化方式)
- ├── sa-token-spring-aop // [插件] sa-token 整合 SpringAOP 注解鉴权
- ├── sa-token-oauth2 // [插件] sa-token 实现 OAuth2.0 模块(内测暂未发布)
- ├── sa-token-demo // [示例] sa-token 示例合集
- ├── sa-token-demo-springboot // [示例] sa-token 整合 SpringBoot
- ├── sa-token-demo-webflux // [示例] sa-token 整合 WebFlux [示例]
- ├── sa-token-demo-jwt // [示例] sa-token 集成 jwt [示例]
- ├── sa-token-demo-oauth2-server // [示例] sa-token 集成 OAuth2.0 (服务端)
- ├── sa-token-demo-oauth2-client // [示例] sa-token 集成 OAuth2.0 (客户端)
- ├── sa-token-doc // [文档] sa-token 开发文档
+ ├── sa-token-core // [核心] Sa-Token 核心模块
+ ├── sa-token-starter // [整合] Sa-Token 与其它框架整合
+ ├── sa-token-servlet // [整合] Sa-Token 整合 Servlet容器实现类包
+ ├── sa-token-spring-boot-starter // [整合] Sa-Token 整合 SpringBoot 快速集成
+ ├── sa-token-reactor-spring-boot-starter // [整合] Sa-Token 整合 Reactor响应式编程 快速集成
+ ├── sa-token-solon-plugin // [整合] Sa-Token 整合 Solon 快速集成
+ ├── sa-token-plugin // [插件] Sa-Token 插件合集
+ ├── sa-token-dao-redis // [插件] Sa-Token 整合 Redis (使用jdk默认序列化方式)
+ ├── sa-token-dao-redis-jackson // [插件] Sa-Token 整合 Redis (使用jackson序列化方式)
+ ├── sa-token-spring-aop // [插件] Sa-Token 整合 SpringAOP 注解鉴权
+ ├── sa-token-oauth2 // [插件] Sa-Token 实现 OAuth2.0 模块(内测暂未发布)
+ ├── sa-token-demo // [示例] Sa-Token 示例合集
+ ├── sa-token-demo-springboot // [示例] Sa-Token 整合 SpringBoot
+ ├── sa-token-demo-webflux // [示例] Sa-Token 整合 WebFlux
+ ├── sa-token-demo-jwt // [示例] Sa-Token 集成 jwt
+ ├── sa-token-demo-solon // [示例] Sa-Token 集成 Solon
+ ├── sa-token-demo-oauth2-server // [示例] Sa-Token 集成 OAuth2.0 (服务端)
+ ├── sa-token-demo-oauth2-client // [示例] Sa-Token 集成 OAuth2.0 (客户端)
+ ├── sa-token-doc // [文档] Sa-Token 开发文档
├──pom.xml
```
diff --git a/sa-token-starter/sa-token-reactor-spring-boot-starter/src/main/java/cn/dev33/satoken/reactor/spring/SaTokenSpringAutowired.java b/sa-token-starter/sa-token-reactor-spring-boot-starter/src/main/java/cn/dev33/satoken/reactor/spring/SaTokenSpringAutowired.java
index eec6e11f..4ccb0f99 100644
--- a/sa-token-starter/sa-token-reactor-spring-boot-starter/src/main/java/cn/dev33/satoken/reactor/spring/SaTokenSpringAutowired.java
+++ b/sa-token-starter/sa-token-reactor-spring-boot-starter/src/main/java/cn/dev33/satoken/reactor/spring/SaTokenSpringAutowired.java
@@ -1,6 +1,7 @@
package cn.dev33.satoken.reactor.spring;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Component;
@@ -114,11 +115,12 @@ public class SaTokenSpringAutowired {
}
/**
- * 利用自动匹配特性,获取SpringMVC框架内部使用的路由匹配器
+ * 利用自动注入特性,获取Spring框架内部使用的路由匹配器
*
* @param pathMatcher 要设置的 pathMatcher
*/
@Autowired(required = false)
+ @Qualifier("mvcPathMatcher")
public void setPathMatcher(PathMatcher pathMatcher) {
SaPathMatcherHolder.setPathMatcher(pathMatcher);
}
diff --git a/sa-token-starter/sa-token-spring-boot-starter/src/main/java/cn/dev33/satoken/spring/SaTokenSpringAutowired.java b/sa-token-starter/sa-token-spring-boot-starter/src/main/java/cn/dev33/satoken/spring/SaTokenSpringAutowired.java
index b368e164..2d313e63 100644
--- a/sa-token-starter/sa-token-spring-boot-starter/src/main/java/cn/dev33/satoken/spring/SaTokenSpringAutowired.java
+++ b/sa-token-starter/sa-token-spring-boot-starter/src/main/java/cn/dev33/satoken/spring/SaTokenSpringAutowired.java
@@ -1,6 +1,7 @@
package cn.dev33.satoken.spring;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Component;
@@ -105,11 +106,12 @@ public class SaTokenSpringAutowired {
}
/**
- * 利用自动匹配特性,获取SpringMVC框架内部使用的路由匹配器
+ * 利用自动注入特性,获取Spring框架内部使用的路由匹配器
*
* @param pathMatcher 要设置的 pathMatcher
*/
@Autowired(required = false)
+ @Qualifier("mvcPathMatcher")
public void setPathMatcher(PathMatcher pathMatcher) {
SaPathMatcherHolder.setPathMatcher(pathMatcher);
}