---------------------------------------------------------------------------------------------------------------------------------

如果您看到了这篇文章并给您带来了误导真的是非常抱歉,修正一下内容,因为此问题的解决方法在初次存在偶然性,不知道是我的机器的问题还是软件的问题,近期再次跑项目的时候发现这种解决办法无法实现 静态资源的放行,最后的解决办法是在配置文件里

去掉静态资源文件的映射,把这些“

#spring.mvc.static-path-pattern=classpath:/static/**
#这是静态资源映射
#spring.resources.static-locations=classpath:/
#spring.resources.static-locations=classpath:/static/
通通干掉

”ShiroFilterFactoryBean 里面的内容不变。--------2020/3/24

---------------------------------------------------------------------------------------------------------------------------------

在springboot当中使用过滤器去做权限的验证是非常蛋疼的事情,而学习使用springsecurity的难度和时间成本相对于shiro来说都要高很多。

Shiro 的配置和使用比较简单,Spring Security 上手复杂些;

Shiro 依赖性低,不需要任何框架和容器,可以独立运行.Spring Security 依赖Spring容器;

shiro 不仅仅可以使用在web中,还支持非web项目它可以工作在任何应用环境中。在集群会话时Shiro最重要的一个好处或许就是它的会话是独立于容器的。

在springboot项目中成功整合shiro之后,会发现一个问题,静态资源好像无法访问了,折腾了快1个小时参考了网上很多资料最终找到了一个解决办法

这是shiro过滤器当中的配置

ShiroFilterFactoryBean bean = new ShiroFilterFactoryBean();
bean.setSecurityManager(manager);
Map<String, String> map = new LinkedHashMap<>();
//拦截的地址,后面的拦截项目,authc登录拦截,perms权限拦截
map.put("/js/**", "anon");
map.put("/user/add","authc");
map.put("/user/update","authc");
map.put("/user/add","perms[user:add]");
map.put("/user/update","perms[user:update]");
bean.setFilterChainDefinitionMap(map);
//如果没有登录的跳转到登录页面
bean.setLoginUrl("/conlogin");
// 如果没有权限跳转到某个页面,这里只是做简单的配置
bean.setUnauthorizedUrl("/unAuthorized");

===================分割线以下是错误的内容请忽略============================  

可能大家按照网上的很多参考资料会发现一个问题

我们的静态资源还是无法拿到,这是怎么回事呢?如果你的springboot不是自己独立创建的话可能会有一个问题,创建的人并没有去映射静态资源的路径

我的测试项目中使用的是:application.properties这个配置文件没有使用yml格式的配置文件,按照网上的资料检查的时候发现没有静态文件的映射关系

抱着试一试的态度试了一下 添加  spring.mvc.static-path-pattern=classpath:/static/ 但是发现还是不起作用

server.port=8022
spring.resources.static-locations=classpath:/static/
spring.thymeleaf.suffix=.html
spring.application.name = springboot-mybatis-plus
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

 但是添加  spring.resources.static-locations=classpath:/static/ 这个之后问题就解决了。

 

但是还有一点就是项目的页面的js引入的话需要

 <script  src="/js/jquery-2.1.4.js"></script>
这里不需要再加上static的路径了。

  

解决springboot 配置文件未映射静态资源文件 导致shiro拦截静态资源的问题的更多相关文章

  1. 在IIS上新发布的网站,样式与js资源文件加载不到(资源文件和网页同一个域名下)

    在IIS上新发布的网站,网站能打开,但样式与js资源文件加载不到(资源文件和网页是同一个域名下,例如:网页www.xxx.com/index.aspx,图片www.xxx.com/pic.png). ...

  2. java基础知识3--如何获取资源文件(Java中获取资源文件的url)

    java开发中,常见的resource文件有:.xml,.properties,.txt文件等,后台开发中经常用到读取资源文件,处理业务逻辑,然后返回结果. 获取资源文件的方法说明getResourc ...

  3. iOS开发之静态库(三)—— 图片、界面xib等资源文件封装到.a静态库

    编译环境:Macbook Air + OS X 10.9.2 + XCode5.1 + iPhone5s(iOS7.0.3) 一.首先将资源文件打包成bundle 新建工程:File -> Ne ...

  4. 解决spring-boot配置文件使用加密方式保存敏感数据启动报错No decryption for FailsafeTextEncryptor. Did you configure the keystore correctly

    spring-boot配置文件使用加密方式保存敏感数据 application.yml spring: datasource: username: dbuser password: '{cipher} ...

  5. IDEA不能读取配置文件,springboot配置文件无效、IDEA resources文件夹指定

  6. SpringBoot配置文件自动映射到属性和实体类(8)

    一.配置文件加载 1.Controller中配置并指向文件 @Controller @PropertySource(value = { "application.properties&quo ...

  7. iOS - Bundle 资源文件包生成和常见资源文件使用

    1.Bundle 文件 Bundle 文件,就是资源文件包.我们将许多图片.XIB.文本文件组织在一起,打包成一个 Bundle 文件.方便在其他项目中引用包内的资源. Bundle 文件是静态的,也 ...

  8. Asp.net全局资源文件( App_GlobalResources)和本地资源文件(App_LocalResources)

    今天项目中需要加入对不同语言的支持. 找了半天的资料,关于GlobalResources和LocalResource都说的模棱两可的. 只能自己边找资料边试.     全局资源文件 样例(Demo中有 ...

  9. 学习使用资源文件[11] - DLL 中的资源文件

      本例将把一张 bmp 图片, 以资源文件的方式嵌入 dll, 然后再调用. 第一步: 建一个 DLL 工程, 如图: 然后保存, 我这里使用的名称都是默认的. 第二步: 建一个资源原文件, 如图: ...

随机推荐

  1. springmvc学习日志四

    一.回顾 1.文件上传 1.1引入fileupload的jar包 1.2在springmvc的配置文件中引入CommonsMutilpartResolver文件上传解析器 1.3在控制层在写入代码 2 ...

  2. 关于 java编程思想第五版 《On Java 8》

    On Java 8中文版 英雄召集令 这是该项目的GITHUB地址:https://github.com/LingCoder/OnJava8 广招天下英雄,为开源奉献!让我们一起来完成这本书的翻译吧! ...

  3. 【C#】 堆和栈

    前言 本文主要是讲解C#语言在内存中堆.栈的使用情况,使读者能更好的理解值类型.引用类型以及线程栈.托管堆. 首先感谢原文作者:Matthew Cochran 为我们带来了一篇非常好的文章,并配以大量 ...

  4. 输入URL后浏览器的过程

    In this article, I want my readers to get a picture of a very basic concept of the web world. Previo ...

  5. restore db fail

    System.Data.SqlClient.SqlError: The operating system returned the error '5(Access is denied.)' while ...

  6. 翻译Go Blog: 常量

    常量 Pob Pike 2014年8月24日 原文 介绍 Go是一门静态语言,它不允许不同数字类型间的操作.你不能将一个浮点数(float64)和一个整数(int)相加,也不能将一个32位整数(int ...

  7. 在已有Win7/10系统电脑中加装Ubuntu18.04(安装双系统)

    准备一台有Win7/10的电脑. 为Ubuntu预留硬盘空间.最好在硬盘最后保留一个空闲分区.(Ubuntu会自动安装到后面的空闲分区) 用Universal USB Installer制作安装盘(U ...

  8. 使用什么快捷键,关闭、打开、最小化qq聊天窗口

    Alt+F4或者Alt+C关闭聊天窗口.Alt+空格+N 最小化聊天窗口.Alt+H 打开聊天记录,打开聊天窗口没有快捷键,必须点击qq好友图标

  9. Elasticsearch集群搭建教程及生产环境配置

    Elasticsearch 是一个极其强大的搜索和分析引擎,其强大的部分在于能够对其进行扩展以获得更好的性能和稳定性. 本教程将提供有关如何设置 Elasticsearch 集群的一些信息,并将添加一 ...

  10. MySQL的几种锁机制的使用介绍

    锁 在日常的开发过程中,为了控制线程的并发肯定会用到锁机制.对于数据库而言,锁机制就是数据库为了保证数据的一致性,而使各种共享资源在被并发访问变得有序所设计的一种规则.当然MySQL也不例外,根据不同 ...