SpringBoot访问静态资源

周一至五早8点半!精品技术文章准时送上!

上一篇我们讲通过springboot如何整合Servlet、Filter、Listener,这里不懂的同学可以参看下前面的文章《

SpringBoot整合Servlet/Filter/Listener

》,这里就不再多说了,本篇我们来看看SpringBoot是如何访问静态资源的,这篇内容相对比较简单。

在此之前我们在springboot-demo父工程下面创建一个子项目:05-springboot-static,并修改pom文件添加web依赖,并且创建启动类。这里就不在贴代码了,参看前面的helloworld项目《SpringBoot的介绍与搭建》。具体目录结构如下:

pom的web依赖!!!

启动项目,如果能够正常启动,那么我们前期准备工作就完成了。SpringBoot读取静态资源的地方有两个地方可以直接读取:

从classpath/static的目录下读取。

从servletContext的根目录下读取。

1

从classpath/static的目录下读取静态资源

首先我们来看看怎么样从classpath / static 的目录下读取静态资源,这里要注意的是:目录名称必须是static,切记,切记,切记!!!

为了演示我们在resources下面创建一个static的文件夹,并在static下创建html和image文件夹,然后分别在html下创建一个index.html的页面文件与在image下放一张图片。结构如下:

重新启动该项目在浏览器访问:http://127.0.0.1:8080/html/index.html 看看有没有显示我们想要的页面,具体如下:

或者再在浏览器直接访问图片:http://127.0.0.1:8080/image/logo.jpg,这里就不再截图了。

从上述的结果我们可以看出,在classpath/static目录下的文件是可以被直接访问的。所有通过我们项目中把js脚本、图片、样式放在static目录下。

2

从ServletContext根目录下读取静态资源

现在我们试一试在ServletContext的根目录下读取静态资源。同样的操作我们在src/main 下面创建一个webapp文件夹,并在webapp下创建一个index2.html页面,页面内容可以随便写。然后在创建一个images文件夹,同时放入一张logo2.jpg图片。

这里也要注意这个目录名称必须是:webapp

启动项目浏览器访问:http://127.0.0.1:8080/index2.html 同样可以直接访问。

同上面第一种方法一样,我们也可以通过servletContext的根目录下读取静态资源。这两种方法需要根据实际情况而定,本人比较喜欢第一种的使用。好了,本篇的内容相对比较简单点。下篇我们将说说附件上传的整合。

(完)

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190218G068KD00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

同媒体快讯

扫码关注云+社区

领取腾讯云代金券