SpringBoot入门学习笔记十(SpringBoot开发Web项目)

版权声明:本文为 小异常 原创文章,非商用自由转载-保持署名-注明出处,谢谢!
本文网址:https://blog.csdn.net/sun8112133/article/details/103261346







通过前几章我们已经了解,Spring Boot 项目其实就是一个 Jar包 ,所以 静态资源(html、css、js等) 就不再存放到 webapps目录 中了。Spring Boot 中早已规定好了默认的 静态资源目录,我们如果不想遵守这个 “约定(或习惯)”,也可以自己进行配置。

我们之前在项目中引入 静态资源 时,是将这些资源下载并手工放入到 webapps目录 中,而 Spring Boot 是将这些 静态资源 直接通过 Jar包 的形式(Maven依赖)引入到项目中。

jquery.js文件


一、引入静态资源

根据源码得知: Spring Boot 项目用来存放 静态资源目录 的路径 是通过 WebMvcAutoConfiguration类 中的 addResourceHandlers方法 来指定的。即 webjars目录 就是用来存放 静态资源 的目录。

1、方式一

我们可以将自己写好的 静态资源(html、css、js等) 打成 Jar包,然后引入到项目中(和引入 jquery 类似)。但这个方式显然很麻烦,固不推荐大家使用。

引入jquery


2、方式二

Spring Boot 中早有约定, 它将一些目录 设置成了专门用来存放 静态资源的目录,我们只需要将 静态资源 直接放入这些目录即可。

根据源码得知:在 ResourceProperties类中 定义好了 四个 静态资源目录 ,分别是:

  1. “classpath:/META-INF/resources/”;
  2. “classpath:/resources/”;
  3. “classpath:/static/”;
  4. “classpath:/public/”。

静态资源目录源码

注意: 在以上目录存放 静态资源 后,访问时,是不需要加目录名的,直接访问即可。如果在多个 静态资源目录 中有冲突文件出现时,它会按照从上到下的优先级访问。

静态目录优先级



二、设置欢迎页

根据源码得知:在 WebMvcAutoConfiguration类 中已经配置好了 欢迎页 的文件名 —— index.html

我们只需要将自己写好的 欢迎页 改为 index.html ,再将这个文件放入任意 静态资源目录 下即可。

欢迎页



三、设置网页Logo

根据源码得知:在 WebMvcAutoConfiguration类 中已经配置好了 网页Logo 的文件名 —— favicon.ico

我们只需要将自己设计好的 Logo文件 改为 favicon.ico,再将这个文件放入任意 静态资源目录 下即可。

Logo



四、总结

  1. 通过源码发现默认的 静态资源目录 有四个,分别是:
    1. “classpath:/META-INF/resources/”;
    2. “classpath:/resources/”;
    3. “classpath:/static/”;
    4. “classpath:/public/”。
  2. 如果想在项目中引用静态资源:只需要将静态资源放入 以上目录即可;
  3. 项目中如果有其他特殊的文件(比如:欢迎页、网页Logo),只需要 按照约定的文件名(index.html 和 favicon.ico)放入到指定目录即可。


五、如何自己配置静态资源目录

虽然 约定优于配置,如果不想遵守约定,也可以自己进行配置,我们通过源码知道 默认的静态资源在ResourceProperties类中,该类的前缀是(prefix = “spring.resources”),如果自定义需要更改staticLocations属性。

我们在全局配置文件中(如:application.properties文件)写入下列配置:

spring.resources.static-locations=classpath:/res/, classpath:/img/

那么现在的 静态资源目录 就变成了:classpath:/res/classpath:/img/

注意: 自定义 静态资源目录 后,以前默认的 静态资源目录 就会失效!



博客中若有不恰当的地方,请您一定要告诉我。前路崎岖,望我们可以互相帮助,并肩前行!



  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小异常

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值