首页 > 其他分享 >thymeleaf下使用

thymeleaf下使用

时间:2023-01-17 17:02:18浏览次数:27  
标签:insert boot thymeleaf 使用 权限 select delete

1. 引入依赖

<dependency>
  <groupId>org.thymeleaf.extras</groupId>
  <artifactId>thymeleaf-extras-springsecurity5</artifactId>
</dependency>

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

2.resource下template目录下

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:th="http://www.thymeleaf.org"
      xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity5">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    登录账号:<span sec:authentication="name"></span><br>
    登录账号:<span sec:authentication="principal.username"></span><br>
    凭证:<span sec:authentication="credentials"></span><br>
    权限和角色:<span sec:authentication="authorities"></span><br>
    客户端地址:<span sec:authentication="details.remoteAddress"></span><br>
    sessionId:<span sec:authentication="details.sessionId"></span><br>

    权限判断
    <button sec:authorize="hasAuthority('/insert')">insert</button>
    <button sec:authorize="hasAuthority('/delete')">delete</button>
    <button sec:authorize="hasAuthority('/update')">update</button>
    <button sec:authorize="hasAuthority('/select')">select</button><br>

    角色判断
    <button sec:authorize="hasRole('aaa')">insert</button>
    <button sec:authorize="hasRole('aaa')">delete</button>
    <button sec:authorize="hasRole('aaa')">update</button>
    <button sec:authorize="hasRole('aaa')">select</button>

</body>
</html>

3.UserDetail类下加入权限进行判断

return new User(username,password,
                //创建权限和角色
                AuthorityUtils.commaSeparatedStringToAuthorityList("admin,normal,ROLE_aaa,/index.html,/insert,/delete"));

标签:insert,boot,thymeleaf,使用,权限,select,delete
From: https://www.cnblogs.com/lwx11111/p/17058188.html

相关文章

  • 注解使用
    1.@Secured角色判断1.1开启注解App启动类中加入注解@EnableGlobalMethodSecurity(securedEnabled=true,prePostEnabled=true)1.2controller层下@PostMapping......
  • os模块的使用方法详解
    os模块os模块负责程序与操作系统的交互,提供了访问操作系统底层的接口;即os模块提供了非常丰富的方法用来处理文件和目录。使用的时候需要导入该模块:importos常用方法如......
  • Servlet8 - thymeleaf 基础
    Thymeleaf基础将java内存中的数据加载到在html页面上,称为渲染而Thymeleaf就是一种实现视图渲染的技术添加Thymeleaf的jar包新建一个Servlet类ViewBaseSevlet......
  • Linux动态库soname的使用
    通过一个简单的例子,体验一下Linux动态库soname的使用。假设有一个动态库:libbar.so.1.1.0,其对应的三个名称如下。realname:libbar.so.1.1.0soname:libbar.so.1linkname:l......
  • Django Session 原理及配置和使用
    1、Django如何使用session会话1.1)session会话是通过中间件实现的,所以首先需要配置MIDDLEWAREMIDDLEWARE=[......'django.contrib.sessions.middleware.SessionM......
  • UI自动化Selenium的使用--Java语言
    1.Selenium的运行环境依赖于Java环境,Java环境分JDK和JRE,JDK就是JavaDevelopmentKit。简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。JRE是Java......
  • Jmeter如何使用jp@gc - WebDriver Sampler做功能GUI自动化测试
    随着Jmeter的版本不断迭代更新,尤其是其插件。Jmeter不仅可以完成性能测试、接口测试,而且可以依靠jp@gc-WebDriverSampler来完成GUI的功能自动化测试了。1.jmeter的安装......
  • ubuntu使用命令sudo apt -get install 安装东西时出现"E: Sub-process /usr/bin/dpkg
    办法如下:1.先将info文件夹更名sudomv/var/lib/dpkg/info/var/lib/dpkg/info_old2.再新建一个新的info文件夹sudomkdir/var/lib/dpkg/info3.更新sudoapt-getupd......
  • VSCode Git 使用 GPG
    1.GPG安装Linux包管理器安装即可,Windows可在如下链接下载。下载链接:www.gnupg.orgWindows下推荐:https://gpg4win.org/download.html2.GPG使用#gpg--full-ge......
  • 数据库实践丨使用MTK迁移Mysql源库后主键自增列导致数据无法插入问题
    摘要:用户使用Mogdb2.0.1版本进行业务上线测试,发现在插入数据时,应用日志中提示primarykey冲突,用户自查业务SQL没有问题,接到通知后,招手处理故障。本文分享自华为云社区《​......