需求缘起:
在shiro和jsp配合使用的时候,有针对jsp的shiro标签,当我们使用的是thymeleaf也是可以使用shiro标签的,这就是本节要解决的问题。
本节大纲:
(1)添加依赖
(2)在ShiroConfiguration添加配置
(3)在index方法中存放userInfo
(4)调整index.html
(2)在ShiroConfiguration添加配置
(3)在index方法中存放userInfo
(4)调整index.html
接下来看下具体的内容:
(1)添加依赖
<dependency> <groupId>com.github.theborakompanioni</groupId> <artifactId>thymeleaf-extras-shiro</artifactId> <version>1.0.2</version> </dependency>
(2)在ShiroConfiguration添加配置
@Bean public ShiroDialect shiroDialect() { return new ShiroDialect(); }
(3)在index方法中存放userInfo对象
修改HomeController的index方法:
@RequestMapping(value={"/","/index"}) public String index(Map<String,Object> map){ System.out.println("HomeController.index()"); //获取到用户信息; Subject subject = SecurityUtils.getSubject(); UserInfo ui = (UserInfo) subject.getPrincipal(); map.put("userInfo",ui); return "/index"; }
(4)调整index.html
<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>Insert title here</title> </head> <body> <h3>主界面--<span th:text="'登录账号:'+${userInfo.username}+'--名称:'+${userInfo.name}">user</span></h3> <a href="/logout">退出</a> <hr /> <!-- 这些实际从数据库中进行查询,可以在 --> <h5>这是通过shiro标签的方式;</h5> <p shiro:hasRole="admin"> <a>管理员角色</a> </p> <p shiro:hasPermission="userInfo:query"> <a href="/userInfo/userList">用户查询</a> </p> <p shiro:hasPermission="userInfo:add"> <a href="/userInfo/userAdd">用户添加</a> </p> <hr /> <h5>从数据库加载菜单</h5> <div th:each="roleList:${userInfo.roleList}"> <span th:text="${roleList.description}"></span> <!-- 角色下所有的所有菜单,实际开发中,只需要获取所有的权限就可以了,无所谓是哪个角色的; --> <p style="color:blue;margin-left:30px;" th:each="permission:${roleList.permissions}"> <a th:href="${permission.url}" th:text="${permission.name}"></a> </p> </div> </body> </html>
à悟空学院:https://t.cn/Rg3fKJD
学院中有Spring Boot相关的课程!点击「阅读原文」进行查看!
SpringBoot视频:http://t.cn/A6ZagYTi
Spring Cloud视频:http://t.cn/A6ZagxSR
SpringBoot Shiro视频:http://t.cn/A6Zag7IV
SpringBoot交流平台:https://t.cn/R3QDhU0
SpringData和JPA视频:http://t.cn/A6Zad1OH
SpringSecurity5.0视频:http://t.cn/A6ZadMBe
Sharding-JDBC分库分表实战:http://t.cn/A6ZarrqS
分布式事务解决方案「手写代码」:http://t.cn/A6ZaBnIr
相关推荐
标题 "springboot_thymeleaf_shiro.zip" 暗示了这个压缩包是一个整合了Spring Boot、Thymeleaf和Shiro的项目实例。这个项目主要是为了实现基于Web的权限控制,通过Spring Boot的便捷性,Thymeleaf的模板引擎功能,...
功能描述: 用于在页面模板中应用Shiro框架提供的功能,例如权限验证、角色... 框架依赖:Spring/Spring Boot、Thymeleaf、Shiro 也可以在github上获取最新源码:https://github.com/edenyin307/thymeleaf-shiro-extags
在本项目中,"spring boot+thymeleaf+mybatis+mysql" 是一个常见的Web应用开发框架组合,尤其适合初学者快速构建基于Java的Web应用程序。以下将详细阐述这四个关键技术及其整合过程中的关键知识点。 1. Spring Boot...
Thymeleaf-extras-shiro库则提供了Thymeleaf和Apache Shiro的集成,使得在Thymeleaf模板中可以直接使用Shiro的安全特性,如`sec:authorize`标签进行权限控制。 3. **Apache Shiro**: Apache Shiro是一个强大且...
在本文中,我们将探讨如何利用Spring Boot和Apache Shiro构建一个权限管理系统。Spring Boot以其便捷的启动和配置方式,使得快速开发变得简单。而Shiro则是一个轻量级的安全框架,用于实现用户认证和授权。 首先,...
使用官方推荐的thymeleaf做为模板引擎,shiro作为安全框架,主流技术,“一网打尽” 基于注解的sql写法,零XML,极简配置,一键前后台代码生成功能简介 1. 用户管理 2. 角色管理 3. 部门管理 4. 菜单管理 5. 系统...
spring boot+redis+shiro+mybatis+thymeleaf整合框架,引入了缓存,可以使整个项目能快速访问资源,并且提供shiro安全框架保证了资源的安全性。spring boot,mybatis则是现在开发的最新框架技术。并且引入了...
在本项目"整合mybatis-spring-boot-2.0-shiro-thymeleaf"中,开发者提供了一个简短但全面的教程,适用于那些刚开始接触这些技术的初学者。这个项目结合了四个关键组件:MyBatis、Spring Boot、Shiro以及Thymeleaf,...
在 Spring Boot 应用程序中整合 Shiro 和 Thymeleaf 需要将 Shiro 和 Thymeleaf 整合到同一个应用程序中。首先,需要添加 Shiro 和 Thymeleaf 相关的依赖项。然后,需要编写配置类来配置 Shiro 的安全管理器和 ...
spring boot+mybatis+thymeleaf+apache shiro开发面向学习型的后台管理系统BootDo,参考地址 http://blog.csdn.net/zhaokejin521/article/details/78719722
该毕业设计使用了当前较为流行的spring boot,spring,spring mvc,mybatis,shiro框架分页处理使用了pagehelper进行操作 前台使用了模板语言thymeleaf,界面较为炫酷,适合年轻朋友。 开发工具采用的是IDEA。 该...
6. **集成Thymeleaf和Shiro**:在Thymeleaf模板中,我们可以使用Thymeleaf的条件表达式结合Shiro标签库,实现动态展示页面内容,根据用户权限决定是否显示某些元素。 7. **测试**:创建用户并登录,通过不同的角色...
该毕业设计使用了当前较为流行的spring boot,spring,spring mvc,mybatis,shiro框架分页处理使用了pagehelper进行操作,前台使用了模板语言thymeleaf,界面较为炫酷,适合年轻朋友。开发工具采用的是IDEA。 该...
在开始介绍如何使用Spring Boot整合Shiro搭建权限管理系统之前,我们首先简要回顾一下Spring Boot的基础知识。 ##### 1. 新建一个Maven工程 为了创建一个Spring Boot项目,首先需要使用Maven或者Gradle作为构建...
在本资源中,我们主要探讨如何将Spring Boot与Shiro安全框架、Redis缓存系统以及Thymeleaf模板引擎进行整合,以构建一个高效的后端应用程序。以下是对这些技术及整合过程的详细说明: 1. **Spring Boot**: Spring...
spring-boot-shiro:springboot 整合shiro rbac示例 spring-boot-file-upload:使用Spring Boot 上传文件示例 spring-boot-fastDFS:Spring Boot 整合FastDFS示例 spring-boot-actuator:Spring Boot Actuator 使用...
import org.apache.shiro.spring.config.ShiroAnnotationProcessorConfiguration; import org.apache.shiro.spring.config.ShiroAutoConfiguration; import org.apache.shiro.spring.config....
使用了当前较为流行的spring boot,spring,spring mvc,mybatis,shiro框架分页处理使用了pagehelper进行操作,前台使用了模板语言thymeleaf,界面较为炫酷,适合年轻朋友。开发工具采用的是IDEA。
6. 使用Shiro,Shiro是一个安全框架,Spring Boot可以与Shiro集成,实现安全控制。 7. 和数据库的交互,Spring Boot支持多种数据库,包括Mybatis,Jpa,MongoDB等。 8. 和中间件的交互,Spring Boot支持多种中间件...