Shiro(四)——通过注解实现权限拦截(基于角色和基于权限)、Shiro的Jsp标签、Shiro 缓存
一、通过注解实现权限拦截
1、粗粒度和细粒度的权限控制
上篇博客中,通过 URL地址进行权限控制,属于粗粒度的权限控制。 基于过滤器来实现的基本上都是粗粒度的权限控制。因为一个页面中可能有很多请求,可能 A 方法允许你调用,但是 B 方法就不允许了,但是他们都属于一个页面,那么仅靠之前的 url 来控制就不能实现。
如果是基于注解实现的权限控制,可以精确到每一个 service 方法,底层实现的是 AOP。所以细粒度的权限控制一般在 service 层实现。
权限保存在数据库中,其实从技术角度来讲,权限也就是一堆字符串,用来判断有无权限其实也就是判断有没有这堆字符串。
2、基于角色访问功能
先完成 controller 层代码和 service 层代码:
controller 层:
service 层: 相关注解好几个,看注释(需要什么功能就用什么注解即可): 这里先用角色测试: 因为底层是
Shiro(四)——通过注解实现权限拦截(基于角色和基于权限)、Shiro的Jsp标签、Shiro 缓存最先出现在Python成神之路。
共有 0 条评论