作者简介:大家好,我是smart哥,前中兴通讯、美团架构师,现某互联网公司CTO
联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬
学习必须往深处挖,挖的越深,基础越扎实!
阶段1、深入多线程
阶段2、深入多线程设计模式
阶段3、深入juc源码解析
码哥源码部分
码哥讲源码-原理源码篇【2024年最新大厂关于线程池使用的场景题】
码哥讲源码-原理源码篇【揭秘join方法的唤醒本质上决定于jvm的底层析构函数】
码哥源码-原理源码篇【Doug Lea为什么要将成员变量赋值给局部变量后再操作?】
码哥讲源码【谁再说Spring不支持多线程事务,你给我抽他!】
打脸系列【020-3小时讲解MESI协议和volatile之间的关系,那些将x86下的验证结果当作最终结果的水货们请闭嘴】
动态 URL 权限控制
用过 Spring Security 的朋友应该比较熟悉对 URL 进行全局的权限控制,即访问 URL 时进行权限匹配;如果没有权限直接跳到相应的错误页面。Shiro 也支持类似的机制,不过需要稍微改造下来满足实际需求。不过在 Shiro 中,更多的是通过 AOP 进行分散的权限控制,即方法级别的;而通过 URL 进行权限控制是一种集中的权限控制。本章将介绍如何在 Shiro 中完成动态 URL 权限控制。
实体
public class UrlFilter implements Serializable {
private Long id;
private String name; //url名称/描述
private String url; //地址
private String roles; //所需要的角色,可省略
private String permissions; //所需要的权限,可省略
}
表示拦截的 URL 和角色 / 权限之间的关系,多个角色 / 权限之间通过逗号分隔,此处还可以扩展其他的关系,另外可以加如 available 属性表示是否开启该拦截。
Service
public interface UrlFilterService {
public UrlFilter createUrlFilter(UrlFilter urlFilter);
public UrlFilter updateUrlFilter(UrlFilter urlFilter);
public void deleteUrlFilter(Long urlFilterId);
public UrlFilter findOne(Long urlFilterId);
public List<UrlFilter> findAll();
}
基本的 URL 拦截的增删改查实现。
@Service
public class UrlFilterServiceImpl implements UrlFilterService {

最低0.47元/天 解锁文章
628

被折叠的 条评论
为什么被折叠?



