【Shiro笔记三】Shiro整合Thymeleaf

版权声明:本文为 小异常 原创文章,非商用自由转载-保持署名-注明出处,谢谢!
本文网址:https://sunkuan.blog.csdn.net/article/details/107154646

文章目录

  • 一、引入 Shiro 整合 Thymeleaf 依赖
  • 二、在 Shiro 配置类中配置 Shrio 方言
  • 三、修改 main.html 页面
  • 四、实现效果
    • 1、效果一(没有任何角色,没有任何权限)
    • 2、效果二(拥有 manage 角色,没有任何权限)
    • 3、效果三(拥有 manage 角色,拥有 administrator 权限)

有的时候我们想在页面上直接动态的检测该用户是否拥有某个角色或者某个权限,我们也能将其实现。

本篇博客将结合 Thymeleaf 模板引擎为大家演示如何在页面中动态检测。我们若使用 Shiro 结合 Thymeleaf,必须先将 Shiro 整合 Thymeleaf,才能在 Thymeleaf 中使用 Shiro 的命名空间。


一、引入 Shiro 整合 Thymeleaf 依赖



	com.github.theborakompanioni
	thymeleaf-extras-shiro
	2.0.0


二、在 Shiro 配置类中配置 Shrio 方言

@Configuration
public class ShiroConfig {
    
	// ...
    
	/**
	 * 配置 ShiroDialect(Shiro 方言) 对象
	 */
	@Bean
	public ShiroDialect shiroDialect() {
		return new ShiroDialect();
	}
    
}

三、修改 main.html 页面

添加 Shiro 的命名空间:xmlns:shiro="http://www.thymeleaf.org/thymeleaf-extras-shiro"

使用 shiro-hasPermission 标签属性就能检测是否拥有某个权限;

使用 shiro-hasRole 标签属性就能检测是否拥有某个角色。




	
	Insert title here
	


	

首页

欢迎 退出

manage | administrator

四、实现效果

1、效果一(没有任何角色,没有任何权限)

【Shiro笔记三】Shiro整合Thymeleaf_第1张图片

2、效果二(拥有 manage 角色,没有任何权限)

【Shiro笔记三】Shiro整合Thymeleaf_第2张图片

3、效果三(拥有 manage 角色,拥有 administrator 权限)

【Shiro笔记三】Shiro整合Thymeleaf_第3张图片

博客中若有不恰当的地方,请您一定要告诉我。前路崎岖,望我们可以互相帮助,并肩前行!

你可能感兴趣的:(java,java,后端)