SpringBoot_静态资源目录及访问

一.静态资源目录

默认静态资源目录为resources目录下的static

META-INF/resources、public、resources、static均为官方指定的静态资源目录,但除static外均需要自行创建

源码

private static final String[] CLASSPATH_RESOURCE_LOCATIONS = new String[]{"classpath:/META-INF/resources/", "classpath:/resources/", "classpath:/static/", "classpath:/public/"};

读取优先级与源码中的排序相同

/META-INF/resources > resources > static > public

若不想使用官方指定的静态资源目录,可自行配置,但需要注意的是,一旦自行配置静态资源目录,官方配置将失效

spring.resources.static-locations=classpath:/目录1/,classpath:/目录2/ 优先级依排序而定

二.访问静态资源

1.在静态资源目录下添加index.html

2.访问

(1)可通过url直接访问

 (2)可通过Controller层跳转

//此处需要返回html页面 故使用@Controller注解
@Controller
public class IndexController {
    @RequestMapping("/index")
    public String index(){
        return "index.html";//访问静态资源记得带上后缀
    }
}

关于注解,值得注意的是:

只使用 @RestController注解 则类无法返回jsp或者html
因为配置的视图解析器 InternalResourceViewResolver不起作用 返回的内容就是Return里的内容

若需要返回到指定页面 则需要使用 @Controller注解 配合视图解析器 InternalResourceViewResolver
若在此基础上需要返回JSON,XML或自定义的mediaType内容到页面 则需要在对应的方法上添加 @ResponseBody注解

@RestController注解 实质上是@Controller注解与@ResponseBody注解的合成注解

此处需要返回html页面 故使用@Controller注解 否则将返回"index.html" 字面意思

且访问静态资源记得带上后缀(index.html),区别于动态资源(无需后缀)

彩蛋-修改网页图标

将图片命名为favicon.ico,放入静态资源目录下

运行效果

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值