???关注**微信公众号:【芋艿的后端小屋】**有福利:
- RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表
- RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址
- 您对于源码的疑问每条留言都将得到认真回复。甚至不知道如何读源码也可以请教噢。
- 新的源码解析文章实时收到通知。每周更新一篇左右。
第一次使用Shiro,感觉不错。之前也用过SS3做权限,相比较而言,现在比较喜欢Shiro
- OncePerRequestFilter.doFilter算是整个过滤连的入口。
- 每个请求发送过来,会获得这个请求对应的FilterChain[AbstractShiroFilter.getExecutionChain()],之后就开始责任链了。另外,该FilterChain的实现类是ProxiedFilterChain。
- AdviceFilter.doFilterInternal是每个过滤器的调用方法,其中会调用到几个比较核心的方法: preHandle(预处理方法,当返回false时候,会导致executeChain不执行),executeChain(执行下个过滤器),postHandle(逻辑结束后执行的方法)
- RolesAuthorizationFilter:角色过滤器,对应实现RBAC权限模型还是很不错的。我用的时候,是重写了这个类。
- FormAuthenticationFilter:登录验证,用于表单验证登录。比较常规的过滤器。
- AccessControlFilter里的isAccessAllowed和onAccessDenied也可以看看,可以根据项目需要,自定义过滤器的时候,可以重写下这2个方法。
写的比较乱,比较简单。如果有问题,可以留言交流!