笔记 笔记
首页
  • 开发工具
  • Java Web
  • Java 进阶
  • 容器化技术
  • Java 专栏

    • Java 核心技术面试精讲
    • Java 业务开发常见错误 100 例
  • 数据库专栏

    • MySQL 实战 45 讲
    • Redis 核心技术与实战
  • 安全专栏

    • OAuth 2.0 实战课
  • 计算机系统
  • 程序设计语言
  • 数据结构
  • 知识产权
  • 数据库
  • 面向对象
  • UML
  • 设计模式
  • 操作系统
  • 结构化开发
  • 软件工程
  • 计算机网络
  • 上午题错题
在线工具 (opens new window)

EasT-Duan

Java 开发
首页
  • 开发工具
  • Java Web
  • Java 进阶
  • 容器化技术
  • Java 专栏

    • Java 核心技术面试精讲
    • Java 业务开发常见错误 100 例
  • 数据库专栏

    • MySQL 实战 45 讲
    • Redis 核心技术与实战
  • 安全专栏

    • OAuth 2.0 实战课
  • 计算机系统
  • 程序设计语言
  • 数据结构
  • 知识产权
  • 数据库
  • 面向对象
  • UML
  • 设计模式
  • 操作系统
  • 结构化开发
  • 软件工程
  • 计算机网络
  • 上午题错题
在线工具 (opens new window)

购买兑换码请添加

添加时候请写好备注,否则无法通过。

  • 设计模式

  • JVM 详解

  • Linux

  • Redis

  • 分布式锁

  • Shiro

    • Shiro 入门

    • Shiro 进阶

      • 整合 Spring Boot
      • 整合 Thymeleaf
        • 添加依赖
        • 修改配置类
        • 常用属性
      • 整合 EhCache
      • 会话管理
  • Gradle

  • Java 进阶
  • Shiro
  • Shiro 进阶
EasT-Duan
2024-09-07
目录

整合 Thymeleaf

欢迎来到我的 ChatGPT 中转站,极具性价比,为付费不方便的朋友提供便利,有需求的可以添加左侧 QQ 二维码,另外,邀请新用户能获取余额哦!最后说一句,那啥:请自觉遵守《生成式人工智能服务管理暂行办法》。

# 添加依赖

<dependency>
    <groupId>com.github.theborakompanioni</groupId>
    <artifactId>thymeleaf-extras-shiro</artifactId>
    <version>2.1.0</version>
</dependency>
1
2
3
4
5

# 修改配置类

//用于解析 thymeleaf 中的 shiro:相关属性
@Bean
public ShiroDialect shiroDialect(){
 return new ShiroDialect();
}
1
2
3
4
5

# 常用属性

<!-- guest 标签 -->
<shiro:guest>
</shiro:guest>
<!-- 用户没有身份验证时显示相应信息,即游客访问信息 -->

<!-- user 标签 -->
<shiro:user>
</shiro:user>
<!-- 用户已经身份验证/记住我登录后显示相应的信息 -->

<!-- authenticated 标签 -->
<shiro:authenticated>
</shiro:authenticated>
<!-- 用户已经身份验证通过,即 Subject.login 登录成功,不是记住我登录的 -->

<!-- notAuthenticated 标签 -->
<shiro:notAuthenticated>
</shiro:notAuthenticated>
<!-- 用户已经身份验证通过,即没有调用 Subject.login 进行登录,包括记住我自动登录的也属于未进行身份验证 -->

<!-- principal 标签 -->
<shiro: principal/>
<shiro:principal property="username"/>
<!-- 相当于((User)Subject.getPrincipals()).getUsername() -->

<!-- lacksPermission 标签 -->
<shiro:lacksPermission name="org:create">
</shiro:lacksPermission>
<!-- 如果当前 Subject 没有权限将显示 body 体内容 -->

<!-- hasRole 标签 -->
<shiro:hasRole name="admin">
</shiro:hasRole>
<!-- 如果当前 Subject 有角色将显示 body 体内容 -->

<!-- hasAnyRoles 标签 -->
<shiro:hasAnyRoles name="admin,user">
</shiro:hasAnyRoles>
<!-- 如果当前 Subject 有任意一个角色(或的关系)将显示 body 体内容 -->

<!-- lacksRole 标签 -->
<shiro:lacksRole name="abc">
</shiro:lacksRole>
<!-- 如果当前 Subject 没有角色将显示 body 体内容 -->

<!-- hasPermission 标签 -->
<shiro:hasPermission name="user:create">
</shiro:hasPermission>
<!-- 如果当前 Subject 有权限将显示 body 体内容 -->
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Shiro 登录认证后主页面</title>
</head>
<body>
<h1>Shiro 登录认证后主页面</h1>
<br>
登录用户为:<span th:text="${session.user}"></span>
<br>
<a href="/logout">登出</a>
<br>
<a href="/user/roles">测试授权-角色验证</a>
<br>
<a href="/user/permissions">测试授权-权限验证</a>
<br>
<a href="/user/permissions" shiro:hasPermission="user:add">测试授权-权限验证</a>
</body>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

上次更新: 2025/04/12, 05:37:39
整合 Spring Boot
整合 EhCache

← 整合 Spring Boot 整合 EhCache→

最近更新
01
Reactor 核心
02-24
02
前置条件
10-30
03
计算机网络
09-13
更多文章>
Theme by Vdoing | Copyright © 2019-2025 powered by Vdoing
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式