最近在用shiro实现安全认证功能时发现一个问题
上图我们定义了一个LinkedHashMap,并往Map里面添加了两对键值对,然后执行
bean.setFilterChainDefinitionMap(filterMap)
之后在将这两个键值对里面的值进行修改,但是没有执行上面的set操作,debug时发现,虽然没有执行set操作,但是FilterChainDefinitionMap里面的filterMap的键值对的值仍然发生了改变。
甚至在后面再添加一个新的键值对,也能够进入FilterChainDefinitionMap里面,猜测这是Map的机制导致的。文章来源:https://www.toymoban.com/news/detail-620947.html
同时注意一个点,在使用shiro安全认证时,定义的Map最好为LinkedHashMap,不要HashMap,因为如果是HashMap,提交到FilterChainDefinitionMap里面后顺序是乱的,有可能会使得我们需要拦截的路径出现了差错。文章来源地址https://www.toymoban.com/news/detail-620947.html
到了这里,关于shiro安全认证之FilterChainDefinitionMap的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!