如此博文所述,Spring Boot 对静态资源映射提供了默认配置html
默认将 /** 全部访问映射到如下目录:
classpath:/static
classpath:/public
classpath:/resources
classpath:/META-INF/resourcesspring
可是能够经过application.properties文件配置静态资源的访问URL样式和静态资源的存放位置,分别为以下两个属性,我从spring-boot的官方文档复制过来,包括井号后对此属性的注释mvc
spring.mvc.static-path-pattern=/** # Path pattern used for static resources. spring.resources.static-locations=classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/ # Locations of static resources.
即第一个属性配置访问静态资源URL样式,第二个配置存放静态资源的位置app
我想改访问静态资源的URL为 /static/**,因而我在application.properties文件添加如下代码spring-boot
spring.mvc.static-path-pattern = /static/** # Path pattern used for static resources
我通常是把这些配置从spring官方文档中粘贴进来,而后改一下后面的值便可,留着注释想方便本身之后修改的时候快速了解该属性url
按理说,井号以后都是注释,且井号以前已经有一个空格了,应该没什么问题的spa
但是当我访问 http://localhost:8080/static/test_pdf.pdf 的时候,且包404错误,提示找不到映射此连接的处理器.net
这让我折腾了很久,最后我尝试把后面的注释去掉的时候,变成以下配置时,忽然发现能够正常访问了code
spring.mvc.static-path-pattern = /static/**
这样看来,应该时spring把#号以及后面的注释都当作URL样式了htm
所以,你们配置这两个属性的时候,记得要后面不能添加注释,不然想我同样浪费时间怀疑很久
当时我配置其余属性的时候,后面的注释是能够保留,我也不知道解析这两个属性时是否是存在一点bug了