首页 > 其他分享 >Shiro实战教程(整合SpringBoot,全网最强)

Shiro实战教程(整合SpringBoot,全网最强)

时间:2023-07-27 19:00:26浏览次数:46  
标签:教程 SpringBoot 登录 product 订单 管理员 权限 Shiro

 本文介绍一个强大的Shiro实战教程,用最简单的代码、最常用的场景让你彻底掌握Shiro的用法,成为Shiro实战高手。本Shiro教程是全网最强的Shiro实战教程。

教程地址:Shiro项目实战专栏介绍 - 自学精灵

为什么这个Shiro教程是全网最强?

其他资料的特点

  1. 代码不全,根本运行不起来
  2. 不包含有无权限、认证、鉴权等多种功能的对比与测试。
  3. 只控制了认证(authentication)或鉴权(authorization),覆盖面太窄
  4. 没有展示通过注解控制权限、通过URL控制权限等重要功能
  5. 用的是一些bug很多的第三方库
  6. 图很少,没有一步一步的测试流程。
  7. 代码无法直接用于项目,连个好demo都算不上。

结果是:学了等于白学用不到项目里

自学精灵的特点

  1. 代码很全,下载一下源码压缩包,IDEA直接运行
  2. 包含有无权限、认证、鉴权等多种功能的对比与测试
  3. 控制了认证(authentication)和鉴权(authorization),覆盖了常见的场景
  4. 展示通过注解控制权限、通过URL控制权限等重要功能。
  5. 用的是Spring自带的等很稳定的工具
  6. 图很详细,有一步一步的测试流程。

结果是:学完即可掌握权限控制,代码可以直接用于项目,自己可以独立完成用户管理项目

学完本专栏你将掌握的项目技能

  1. 使用Shiro整合JWT,用注解的方式控制用户权限(工作中常用)
  2. 使用Shiro整合JWT,用url的方式控制用户权限(工作中常用)
  3. 使用Shiro整合Session,用注解的方式控制用户权限(旧项目中常用)
  4. 使用Shiro整合Session,用redis控制用户权限(旧项目中常用)

学完上边的项目后,你可以独立地开发一个用户管理系统了!而用户管理系统一般是每个项目所必须的,是中高级Java开发必须掌握的。

学完本专栏你将能解答如下问题

  1. 用户的登录和退出接口怎么写?
  2. 用户的账号和密码怎么保存到数据库?密码如何加密?
  3. 如何控制用户登录的有效时间?比如:让用户登录2天后,必须重新登录,该怎么做?
  4. 有的接口允许匿名访问,有的必须登录才能访问,该怎么做?
  5. 登录之后一定就能访问所有接口了吗?
  6. 如果超级管理员有所有权限,订单管理员只能访问订单,产品管理员只能访问产品,该怎么做?
  7. 如果让你独立负责一个用户管理系统,你能完成吗?

本专栏的项目场景

本文假设做一个商城系统。角色如下

  • admin(超级管理员):有所有权限
    • 使用shiro通配符:*:*
  • productManager(产品管理员):有product(产品)的所有权限
    • product:add,product:delete,product:edit,product:view
  • orderManager(订单管理员):有order(订单)的所有权限
    • order:add,product:delete,product:edit,product:view

本专栏将带你体验项目的如下功能:

  1. 没有登录时只能访问允许匿名的接口,比如:登录
  2. 超级管理员登录后可以操作所有接口,比如:编辑产品、编辑订单
  3. 产品管理员登录后可以操作产品接口,比如:编辑产品,但不能操作订单接口,比如:编辑订单
  4. 订单管理员登录后可以操作订单接口,比如:编辑订单,但不能操作产品接口,比如:编辑订单
  5. 删除功能只有超级管理员能访问,产品管理员删不了产品,订单管理员也删不了订单
  6. 登录超时之后,无法访问接口。

标签:教程,SpringBoot,登录,product,订单,管理员,权限,Shiro
From: https://www.cnblogs.com/knifeblade/p/17585803.html

相关文章

  • 9、教程-2环境修改
    在本教程中,我们将教您如何在环境中创建简单的对象。第一步是创建一个与环境相互作用的球。我们将讨论与节点相关的几个概念:它们的含义是什么,如何创建它们,它们必须如何附属,等等。此外,我们将了解如何设置物理。将介绍几种类型的节点。其详细定义见参考手册。将节点图表放在你面前,也......
  • 9、教程-3控制器的更多方面
    现在我们开始讨论与机器人控制器编程相关的主题。我们将设计一个简单的控制器,以避免在前面的教程中创建的障碍。本教程将向您介绍Webots中机器人编程的基础知识。在本章末尾,您应该了解场景树节点和控制器API之间的链接是什么,机器人控制器必须如何初始化和清理,如何初始化机器人设备......
  • Sa-Token简单几行代码,优雅的实现 SpringBoot 鉴权
    一、添加依赖二、设置配置文件三、创建测试Controller:登录接口四、创建测试Controller:普通访问接口五、检验当前会话是否已经登录六、路由拦截鉴权七、自定义全局异常拦截添加依赖<dependency><groupId>cn.dev33</groupId><artifactId>......
  • springboot实现链接生成QrCode
    1.注入依赖<dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.3.0</version></dependency><dependency><groupId>com.google.zxing</groupId>......
  • RunnerGo:详细使用教程,带你轻松拿捏性能测试
    RunnerGo简介:RunnerGo是基于go语言开发的轻量级性能测试平台,支持接口测试、自动化测试、性能测试等3大测试模块,相对于传统的性能测试工具,它具有运行速度快、资源占用少等特点。并且还支持可实时查看性能测试报告的平台RunnerGo的优势:1.RunnerGo运行速度更快,更节省资源采用go......
  • 使用Docker安装Apollo并使用SpringBoot连接配置中心
    上篇文章我们学习了Apollo的本地安装,如果还不会本地安装的朋友可以查看之前的文章进行了解和学习链接地址(https://www.cnblogs.com/eternality/p/17583023.html),本篇我们学习怎么使用Docker安装Apollo及如何使用Java连接Apollo。阅读本篇文章需要了解docker安装容器相关的使用命令,......
  • idea2023.1.3 最新激活教程
    说明本教程用来激活 idea2023.1.3版本。激活效果 下载idea2023.1.3版本客户端官网地址:https://www.jetbrains.com/idea/download/other.html根据自己所需下载相应的版本安装(解压)idea2023.1.3版本客户端解压版本的直接在自己的软件安装目录解压即可安装版本一路nex......
  • 九州八荒录H5游戏详细图文架设教程
    前言这次给大家带来一款丧心病狂的超变版仙侠H5游戏,九州八荒录H5,变态到什么程度呢?各种宝物升级到上万阶,还没有达到上限,战力也突破到了千万亿,只有你够肝,榜一大佬指日可待!本文讲解九州八荒录游戏架设教程,想研究H5游戏如何实现,体验游戏中秒天秒地秒空气的一定不要错过。我架......
  • Systemd 入门教程
    Systemd入门教程:命令篇Systemd是Linux系统工具,用来启动守护进程,已成为大多数发行版的标准配置。本文介绍它的基本用法,分为上下两篇。今天介绍它的主要命令,下一篇介绍如何用于实战。一、由来历史上,Linux的启动一直采用init进程。下面的命令用来启动服务。$sudo/et......
  • SpringBoot 开启GZIP数据压缩
    I.gizp压缩配置1.配置SpringBoot默认是不开启gzip压缩的,需要我们手动开启,在配置文件中添加两行server:compression:enabled:truemime-types:application/json,application/xml,text/html,text/plain,text/css,application/x-javascript注意下上面配置中......