thymeleaf使用shiro标签 springboot2.0

原文作者:https://blog.csdn.net/zhuzhezhuzhe1

在前台页面使用shiro的标签,springboot2.0,先添加依赖

1、添加依赖

<dependency>
   <groupId>com.github.theborakompanioni</groupId>
   <artifactId>thymeleaf-extras-shiro</artifactId>
   <version>2.0.0</version>
</dependency>

2、在ShiroConfig中配置ShiroDialect

@Bean
public ShiroDialect shiroDialect() {
    return new ShiroDialect();
}

3、html中导入shiro标签

<!DOCTYPE html>
<html xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">

引用

<shiro:principal property="username"/>

shiro:principal获取得到的结果,是由自定义的ShiroRealm中的doGetAuthenticationInfo方法中

SimpleAuthenticationInfo authenticationInfo = new SimpleAuthenticationInfo(
        user, //shiro.principal获取得到结果
        user.getPassword(), 
        ByteSource.Util.bytes(user.getSalt()),
        getName()  //realm name
);

第一个参数决定的,此处我放入的是user实体类,shiro.principal获取得到的结果就是User类,如果放入的是String,获取结果则为String,后台获取方式(实体类)如

User user = (User)SecurityUtils.getSubject().getPrincipal()

去掉pom中的热部署tools

<!--<dependency>-->
   <!--<groupId>org.springframework.boot</groupId>-->
   <!--<artifactId>spring-boot-devtools</artifactId>-->
   <!--<optional>true</optional>-->
<!--</dependency>-->

否则同一个类转换也报错

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值