您现在的位置是:首页 > 编程 > 

Shiro+SpringBoot 时,anon配置的匿名路径被拦截,自定义配置类走过的坑

2025-07-27 16:42:15
Shiro+SpringBoot 时,anon配置的匿名路径被拦截,自定义配置类走过的坑 最开始一直不去自定配置类,究其原因发现是少了:代码语言:javascript代码运行次数:0运行复制/** * Shiro配置类 */ @Configuration少了@Configuration,这个注解配置。一路顺畅的走了下来:Shiro+SpringBoot 时,anon配置的匿名路径被拦截,自定义

Shiro+SpringBoot 时,anon配置的匿名路径被拦截,自定义配置类走过的坑

最开始一直不去自定配置类,究其原因发现是少了:

代码语言:javascript代码运行次数:0运行复制
/**
 * Shiro配置类
 */
@Configuration

少了@Configuration,这个注解配置。

一路顺畅的走了下来:

Shiro+SpringBoot 时,anon配置的匿名路径被拦截,自定义配置类走过的坑_SpringBoot

是不是要美滋滋的走上康庄大道了呢?

发现:

代码语言:javascript代码运行次数:0运行复制
anon,匿名放行机制不管用哦。怎么回事呢?

修改成了:

代码语言:javascript代码运行次数:0运行复制
//放行页面;
        filterMap.put("/testThymeLeaf","anon");
        //拦截某个目录下的所有页面;
        filterMap.put("/*","authc");

再配置shiro的时候,如下代码要注意:

1、下述代码中必须是LinkedHashMap 而不能是HashMap。

2、anon定义必须在authc之前

否则anon定义不生效

怎么还不行呢?

anon配置的匿名路径被拦截

主要原因:配置过滤器集合时使用了HashMap

代码语言:javascript代码运行次数:0运行复制
Map<String,String> filterMap=new HashMap<>();

正确代码如下:应该使用LinkedHashMap

代码语言:javascript代码运行次数:0运行复制
Map<String,String> filterMap=new LinkedHashMap<>();

面试题时刻:

为什么这里用LinkedHashMap?

划重点了:

(一)HashMap取值--->不是按照插入顺序

代码语言:javascript代码运行次数:0运行复制
HashMap<String,Integer> hm=new HashMap<String, Integer>();
hm.put("大学语文",);
hm.put("英语",1);
hm.put("音乐鉴赏",5);
hm.put("数学",2);
hm.put("形式政策",4);
for (Map.Entry<String ,Integer> entry:()){
    println(entry.getKey()+" : "+entry.getValue());
}

(二):LinkedHashMap的取值--->是按照插入取值

代码语言:javascript代码运行次数:0运行复制
LinkedHashMap<String,Integer> lhm=new LinkedHashMap<String,Integer>();
lhm.put("化学",1);
lhm.put("生物",2);
lhm.put("物理",);
lhm.put("语文",4);
l();
for (Map.Entry<String,Integer> entry:l()){
    println(entry.getKey()+" : "+entry.getValue());
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2022-0-01,如有侵权请联系 cloudcommunity@tencent 删除注解string集合配置数学

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/biancheng/1245215.html

相关标签:无
上传时间: 2025-07-27 08:30:00
留言与评论(共有 16 条评论)
本站网友 跑鞋
11分钟前 发表
Integer>(); hm.put("大学语文"
本站网友 应运而生任务
26分钟前 发表
自定义配置类走过的坑_SpringBoot 是不是要美滋滋的走上康庄大道了呢?发现:代码语言:javascript代码运行次数:0运行复制anon
本站网友 367art
17分钟前 发表
下述代码中必须是LinkedHashMap 而不能是HashMap
本站网友 万卷经书曾读过
3分钟前 发表
自定义配置类走过的坑_SpringBoot 是不是要美滋滋的走上康庄大道了呢?发现:代码语言:javascript代码运行次数:0运行复制anon
本站网友 南昌酒店预订
9分钟前 发表
配置过滤器集合时使用了HashMap代码语言:javascript代码运行次数:0运行复制Map<String
本站网友 网盘115
29分钟前 发表
分享自作者个人站点/博客
本站网友 嘉兴职业技术学院地址
17分钟前 发表
String> filterMap=new HashMap<>();正确代码如下:应该使用LinkedHashMap代码语言:javascript代码运行次数:0运行复制Map<String
本站网友 编程中国
11分钟前 发表
怎么回事呢?修改成了:代码语言:javascript代码运行次数:0运行复制//放行页面; filterMap.put("/testThymeLeaf"
本站网友 人民币对澳元汇率今日
15分钟前 发表
l()){ println(entry.getKey()+"
本站网友 缓解痛经的穴位
10分钟前 发表
Integer> entry
本站网友 tutorabc
9分钟前 发表
Integer> entry
本站网友 秦德亮
1秒前 发表
4); for (Map.Entry<String
本站网友 biliplus
9分钟前 发表
Integer> hm=new HashMap<String
本站网友 得月楼
6分钟前 发表
Integer> entry
本站网友 都安租房
14分钟前 发表
究其原因发现是少了:代码语言:javascript代码运行次数:0运行复制/** * Shiro配置类 */ @Configuration少了@Configuration