diff --git a/sa-token-demo/sa-token-demo-thymeleaf/src/main/java/com/pj/SaTokenThymeleafDemoApplication.java b/sa-token-demo/sa-token-demo-thymeleaf/src/main/java/com/pj/SaTokenThymeleafDemoApplication.java
index bcd9cd24..dbbd2eb0 100644
--- a/sa-token-demo/sa-token-demo-thymeleaf/src/main/java/com/pj/SaTokenThymeleafDemoApplication.java
+++ b/sa-token-demo/sa-token-demo-thymeleaf/src/main/java/com/pj/SaTokenThymeleafDemoApplication.java
@@ -10,7 +10,8 @@ public class SaTokenThymeleafDemoApplication {
public static void main(String[] args) {
SpringApplication.run(SaTokenThymeleafDemoApplication.class, args);
- System.out.println("\n启动成功:sa-token配置如下:" + SaManager.getConfig());
+ System.out.println("\n启动成功,Sa-Token 配置如下:" + SaManager.getConfig());
+ System.out.println("\n测试访问:http://localhost:8081/");
}
}
\ No newline at end of file
diff --git a/sa-token-demo/sa-token-demo-thymeleaf/src/main/resources/templates/index.html b/sa-token-demo/sa-token-demo-thymeleaf/src/main/resources/templates/index.html
index 3886256b..9952fcc9 100644
--- a/sa-token-demo/sa-token-demo-thymeleaf/src/main/resources/templates/index.html
+++ b/sa-token-demo/sa-token-demo-thymeleaf/src/main/resources/templates/index.html
@@ -1,5 +1,5 @@
-
+
Sa-Token 集成 Thymeleaf 标签方言
@@ -9,28 +9,28 @@
Sa-Token 集成 Thymeleaf 标签方言 —— 测试页面
- 登录
+ 登录
注销
-
+
登录之后才能显示:value
不登录才能显示:value
-
+
具有角色 admin 才能显示:value
同时具备多个角色才能显示:value
只要具有其中一个角色就能显示:value
-
不具有角色 admin 才能显示:value
-
+
不具有角色 admin 才能显示:value
+
具有权限 user-add 才能显示:value
同时具备多个权限才能显示:value
只要具有其中一个权限就能显示:value
-
不具有权限 user-add 才能显示:value
-
+
不具有权限 user-add 才能显示:value
+
从SaSession中取值:
-
+
diff --git a/sa-token-doc/plugin/thymeleaf-extend.md b/sa-token-doc/plugin/thymeleaf-extend.md
index ae8f00fd..9a17fd5c 100644
--- a/sa-token-doc/plugin/thymeleaf-extend.md
+++ b/sa-token-doc/plugin/thymeleaf-extend.md
@@ -72,7 +72,7 @@ public class SaTokenConfigure {
不具有角色 admin 才能显示:
- value
+ value
```
@@ -92,7 +92,7 @@ public class SaTokenConfigure {
不具有权限 user-add 才能显示:
- value
+ value
```
diff --git a/sa-token-plugin/sa-token-dialect-thymeleaf/src/main/java/cn/dev33/satoken/thymeleaf/dialect/Sa-Token-Dialect.xml b/sa-token-plugin/sa-token-dialect-thymeleaf/src/main/java/cn/dev33/satoken/thymeleaf/dialect/Sa-Token-Dialect.xml
new file mode 100644
index 00000000..92b05bb0
--- /dev/null
+++ b/sa-token-plugin/sa-token-dialect-thymeleaf/src/main/java/cn/dev33/satoken/thymeleaf/dialect/Sa-Token-Dialect.xml
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/sa-token-plugin/sa-token-dialect-thymeleaf/src/main/java/cn/dev33/satoken/thymeleaf/dialect/SaTokenDialect.java b/sa-token-plugin/sa-token-dialect-thymeleaf/src/main/java/cn/dev33/satoken/thymeleaf/dialect/SaTokenDialect.java
index f2482e80..8bfc681e 100644
--- a/sa-token-plugin/sa-token-dialect-thymeleaf/src/main/java/cn/dev33/satoken/thymeleaf/dialect/SaTokenDialect.java
+++ b/sa-token-plugin/sa-token-dialect-thymeleaf/src/main/java/cn/dev33/satoken/thymeleaf/dialect/SaTokenDialect.java
@@ -72,14 +72,16 @@ public class SaTokenDialect extends AbstractProcessorDialect {
// 角色判断
new SaTokenTagProcessor(prefix, "hasRole", value -> stpLogic.hasRole(value)),
- new SaTokenTagProcessor(prefix, "hasRoleOr", value -> stpLogic.hasRoleOr(toArray(value))),
new SaTokenTagProcessor(prefix, "hasRoleAnd", value -> stpLogic.hasRoleAnd(toArray(value))),
+ new SaTokenTagProcessor(prefix, "hasRoleOr", value -> stpLogic.hasRoleOr(toArray(value))),
+ new SaTokenTagProcessor(prefix, "notRole", value -> ! stpLogic.hasRole(value)),
new SaTokenTagProcessor(prefix, "lackRole", value -> ! stpLogic.hasRole(value)),
// 权限判断
new SaTokenTagProcessor(prefix, "hasPermission", value -> stpLogic.hasPermission(value)),
- new SaTokenTagProcessor(prefix, "hasPermissionOr", value -> stpLogic.hasPermissionOr(toArray(value))),
new SaTokenTagProcessor(prefix, "hasPermissionAnd", value -> stpLogic.hasPermissionAnd(toArray(value))),
+ new SaTokenTagProcessor(prefix, "hasPermissionOr", value -> stpLogic.hasPermissionOr(toArray(value))),
+ new SaTokenTagProcessor(prefix, "notPermission", value -> ! stpLogic.hasPermission(value)),
new SaTokenTagProcessor(prefix, "lackPermission", value -> ! stpLogic.hasPermission(value))
));